AcWing P2034. 写素数到文件
原题链接
简单
作者:
Florentino
,
2021-05-22 13:28:09
,
所有人可见
,
阅读 280
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <stdlib.h>
#include <queue>
#include<iomanip>
#include<fstream>
using namespace std;
int n, q;
bool isprime[100000010];
int prime[1000010];
int num[100010];
int main()
{
cin >> n;
int cnt = 0;
FILE *file = fopen("E://1.txt", "w");
memset(isprime, 1, sizeof isprime);
isprime[1] = 0;
for (int i = 2; i <= n; i++) {
if (isprime[i] == 1) {
cnt++;
prime[cnt] = i;
}
for (int j = 1; j <= cnt && i * prime[j] <= n; j++) {
isprime[i * prime[j]] = 0;
if (i % prime[j] == 0)//i中也含有Prime[j]这个因子
break; //重要步骤。见原理
}
}
for (int i = 1; i <= cnt; i++) {
fprintf(file,"%d %d\n",i, prime[i]);
}
fclose(file);
cout << 1111 << endl;
return 0;
}