关注
const LL mod = 1000000007;
const int maxn = 200005;
int n,m,k;
int a[maxn],dp[maxn];
int vis[maxn],vv[maxn];
vector<int > vc[maxn],vs[maxn];
int ans;
void bfs(int u){
vv[u] = 1;
int z = a[u];
int len = vc[z].size();
for(int i = 0;i<len;i++){
int v = vc[z][i];
int le = vs[v].size();
for(int j = 0;j<le;j++){
int b = vs[v][j];
if(vv[b] == 0){
ans++;
bfs(b);
}
}
}
}
int main()
{
cin>>n;
for(int i = 0;i<n;i++){
int x;
scanf("%d",&a[i]);
x = a[i];
if(vis[x] == 1) {
int le = vc[x].size();
for(int j=0;j<le;j++){
int v = vc[x][j];
vs[v].push_back(i);
}
continue;
}
vis[x] = 1;
int y = x;
for(int j =2;j*j<=y;j++){
if(y%j==0){
vc[x].push_back(j);
while(y%j==0){
y/=j;
}
}
}
if(y!=1) vc[x].push_back(y);
int len = vc[x].size();
for(int j=0;j<len;j++){
int v = vc[x][j];
vs[v].push_back(i);
}
}
int ll = vs[2].size();
int maxx = 0;
for(int i = 0;i<n;i++){
if(vv[i] == 0){
ans = 1;
bfs(i);
maxx = max(ans,maxx);
}
}
cout<<maxx<<endl;
return 0;
}
查看原帖
点赞 评论
相关推荐
牛客热帖
正在热议
# 25届秋招总结 #
353483次浏览 3449人参与
# 我的实习求职记录 #
6086034次浏览 83688人参与
# 北方华创开奖 #
50059次浏览 450人参与
# 地方国企笔面经互助 #
5253次浏览 13人参与
# 职场吐槽大会 #
90730次浏览 752人参与
# 选完offer后,你后悔学本专业吗 #
23043次浏览 165人参与
# 百度开奖 #
214270次浏览 1358人参与
# ai智能作图 #
3578次浏览 72人参与
# 运营商笔面经互助 #
92753次浏览 1335人参与
# 实习中的菜狗时刻 #
278885次浏览 2740人参与
# 腾讯求职进展汇总 #
199914次浏览 1663人参与
# 如果有时光机,你最想去到哪个年纪? #
24863次浏览 509人参与
# 当下环境,你会继续卷互联网,还是看其他行业机会 #
37626次浏览 345人参与
# 风评不好的公司,你会去吗? #
20731次浏览 94人参与
# 上班苦还是上学苦呢? #
91032次浏览 788人参与
# 大疆求职进展汇总 #
413686次浏览 2934人参与
# 国企还是互联网,你怎么选? #
90185次浏览 703人参与
# 硬件兄弟们 甩出你的华为奖状 #
73673次浏览 609人参与
# 远程面试的尴尬瞬间 #
20516次浏览 296人参与
# 软件开发2024笔面经 #
2325808次浏览 48225人参与
# 如果中了500万,你会离职吗? #
13653次浏览 145人参与
# 如何一边实习一边秋招 #
1000050次浏览 12698人参与