codeforce 954 div3 G2题

server/2024/12/23 6:29:58/

思路:
质因子分解可以顺着分解,也可以逆着分解
即找到每一个数字的倍数,再找到每一个数字的因数

const int N = 5e5+10;
vector<int> ff[N];
vector<int> f[N];
vector<int> g[N];void solve(){int n;cin>>n;vector<int> nums(n+1,0);ll ans = 0;for(int i = 1;i<=n;i++){cin>>nums[i];}for(int i = 1;i<=n;i++){int w = gcd(i,nums[i]);int x = i/w,y = nums[i]/w;//cout<<x<<" "<<y<<" eeeeee"<<endl;if(nums[i]%i == 0)  ans--;f[x].emplace_back(y);g[y].emplace_back(x);}vector<int>cnt(n+1,0);for(int i = 1;i<=n;i++){int m = f[i].size();if(m == 0)  continue;sort(f[i].begin(),f[i].end());for(int j = i;j<=n;j+=i){for(auto x : g[j]){cnt[x]++;}}for(int j = 0;j<m;j++){int k = 1;while(j<m-1 && f[i][j] == f[i][j+1]){j++;k++;}int y = f[i][j];ll sum = 0;for(auto son : ff[y]){sum += cnt[son];}sum *= k;ans += sum;}for(int j = i;j<=n;j+=i){for(auto x : g[j]){cnt[x]--;}}}for(int i = 1;i<=n;i++){f[i].clear();g[i].clear();}cout<<ans/2<<endl;
}

http://www.ppmy.cn/server/59993.html

相关文章

解决:使用WCHISPStudio_V360的RISCV系统出现由于找不到 CH375DLLDLL,无法继续执行代码。重新安装程序可能会解决此问题。

在使用WCHISPStudio_V360进行程序烧录的时候 选择riscv出现如下报错 说明你的电脑没有安装对应的驱动。 说明安装的程序有问题&#xff0c;无法在你的C:\Windows\SysWOW64中安装CH375DLL.DLL 解决方法一&#xff1a; 这个软件我是通过MounDriver打开的&#xff0c;所以重新执…

ubuntu18.04下载vscode

1、进入官网vscode下载对应的.deb安装包 2、打开文件对应目录下的终端进行安装 sudo dpkg -i code_1.73.1-1667967334_amd64.deb 3、运行vscode code 4、打开vscode安装中文包

新型开发语言的试用感受-仓颉语言发布之际

经常听一些媒体介绍一些新型的开发语言&#xff0c;所以最近心血来潮&#xff0c;安装了几种感受了一些。 先看名气&#xff0c;如ziglang&#xff0c;网址为&#xff1a;Home ⚡Zig Programming Language 号称是可以取代C语言的一门新语言&#xff0c;其实我主要是受下面这篇…

【网络安全】Oracle:SSRF获取元数据

未经许可&#xff0c;不得转载。 文章目录 前言正文漏洞利用 前言 Acme 是一家广受欢迎的播客托管公司&#xff0c;拥有庞大的客户群体。与许多大型运营公司一样&#xff0c;Acme 采用了Apiary的服务&#xff0c;使用户能够安全高效地管理他们的播客。 Apiary 于2017年初被Or…

比较妙笔生词智能写歌词软件与 ChatGPT 写歌词的优势所在

比较妙笔生词智能写歌词软件与 ChatGPT 写歌词的优势所在 妙笔生词智能写歌词软件&#xff08;veve522&#xff09;&#xff1a; 1.专业性更强&#xff1a;可能针对作词领域进行了特定的优化和训练&#xff0c;更懂得歌词创作的规律和特点&#xff0c;如韵律、节奏等。 2.风格…

Xcode 16 beta3 真机调试找不到 Apple Watch 的尝试解决

很多小伙伴们想用 Xcode 在 Apple Watch 真机上调试运行 App 时却发现&#xff1a;在 Xcode 设备管理器中压根找不到对应的 Apple Watch 设备。 大家是否已将 Apple Watch 和 Mac 都重启一万多遍了&#xff0c;还是束手无策。 Apple Watch not showing in XCodeApple Watch wo…

ENSP实现防火墙区域策略与用户管理

目录 实验拓扑与要求​编辑 交换机与防火墙接口的配置 交换机&#xff1a; 创建vlan 接口配置 防火墙配置及接口配置 防火墙IP地址配置 云配置​编辑​编辑​编辑 在浏览器上使用https协议登陆防火墙&#xff0c;并操作 访问网址&#xff1a;https://192.168.100.1:844…

[vite] Pre-transform error: Cannot find package pnpm路径过长导致运行报错

下了套vue3的代码&#xff0c;执行pnpm install初始化&#xff0c;使用vite启动&#xff0c;启动后访问就会报错 报错信息 ERROR 16:40:53 [vite] Pre-transform error: Cannot find package E:\work\VSCodeProjectWork\jeecg\xxxxxxxxx-next\xxxxxxxxx-next-jeecgBoot-vue3\…