PTA | 1013 数素数 20分 难点:格式 恶心人

89 阅读1分钟

PTA | 1013 数素数

一共要输出n个元素,我们用cnt统计当前是第几个素数,当是第n个素数时停止循环。

#include<bits/stdc++.h>
using namespace std;

int cnt,idx;
void isprime(int m,int n)
{
      for (int i = 2;cnt<n; i++) {
        int flag=1;
        for (int j = 2; j <= sqrt(i); j++) {
            if (i % j == 0) {
                flag = 0;
                break;
            }
        }
       if (flag) {
            cnt++;
            if (cnt >= m) {
                cout << i;
                idx++;
                if (idx % 10 == 0) cout << endl;
                else if (cnt != n) cout << " "; // 在每行的开始处输出空格,除了最后一行
            }
     }
    
   }
}
int main()
{
    int n,m;cin>>m>>n;

    isprime(m,n);
    return 0;
}