求调
  • 板块灌水区
  • 楼主okra_S_lotus
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/7/26 10:11
  • 上次更新2024/7/26 11:09:24
查看原帖
求调
820168
okra_S_lotus楼主2024/7/26 10:11
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=100000000;
int n,m=1,a[N],ans, zs[N],k;
bool zhishupanduan[N],fangwen[N];
bool zhishu(int r){
	for(int i=2;i*i<=r;i++){
		if(r%i==0) return 0;
	}
	return 1;
}
signed main()
{
	cin>>n;
	m=1;
	for(int i=2;i<=n;i++) {if(zhishu(i)) zs[m]=i;m++;}
	k=1;
	for(int i=2;i<=n;i++) {for(int j=1;j<=m;j++) if(i!=zs[j]){a[k]=i;k++;} }
	for(int i=1;i<=m;i++){
		int o=1;
		cout<<zs[i];
		for(int j=1;j<=k;j++){
			if(zs[i]*o == a[j]){
				o++;
				if(fangwen[j]) continue;
				fangwen[j]=1;
				cout<<a[j]<<" ";
			}
		}
	}
}

不知道为啥输出不对 T484283

2024/7/26 10:11
加载中...