站外题 & 玄关
  • 板块学术版
  • 楼主dg114514
  • 当前回复4
  • 已保存回复5
  • 发布时间2024/11/7 15:05
  • 上次更新2024/11/7 18:53:26
查看原帖
站外题 & 玄关
1373205
dg114514楼主2024/11/7 15:05

我的代码:

fn[1]=f[1]=2;
	for(int i=2;i<=n;i++){
		if(!f[i])prim[++cnt]=i,fn[i]=2;
		for(int j=1;j<=cnt&&i*prim[j]<=n;j++){
			f[i*prim[j]]=1;
			if(!(i%prim[j])){
				fn[i*prim[j]]=fn[i]<<1;
				if(i==prim[j])fn[i*i]--;
				break;
			}
		}
	}

思路:线性筛计算因数个数为 44 的所有数
玄关:为什么 fn 有的是 00???

2024/11/7 15:05
加载中...