2168 - totalfrank很无聊

totalfrank最近很无聊,他看到每一个数都会分解质因数,如果是素数他就会很开心。请你判断给出的数是否是素数?

题目输入

多组输入样例,每个样例包含一个整数n (n <= 10000)

题目输出

对应每个样例输出一行,如果对应的输入是素数,则输出"YES",否则输出"NO"

输入/输出样例

题目输入

2
3
4

题目输出

YES
YES
NO

C++解答

#include <iostream>
#include <stdio.h>
#include <string.h>

using namespace std;

int isprime[10005];
int main() {
	//freopen("totalfrank.in", "r", stdin);
	//freopen("totalfrank.out", "w", stdout);
	
  memset(isprime, true, sizeof(isprime));
  isprime[1] = 0;
  isprime[0] = 0;
  for (int i = 2; i <= 100; i++) {
    if (isprime[i])
      for (int j = 2; i * j <= 10000; j++) {
        isprime[i * j] = 0;
      }
  }
  int q;
  while (~scanf("%d", &q)) {
    if (isprime[q]) {
      puts("YES");
    } else {
      puts("NO");
    }
  }
  return 0;
}
时间限制 1 秒
内存限制 128 MB
讨论 统计
上一题 下一题