CF230B.T-primes

普及-

通过率:0%

时间限制:2.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

We know that prime numbers are positive integers that have exactly two distinct positive divisors. Similarly, we'll call a positive integer t Т-prime, if t has exactly three distinct positive divisors.

You are given an array of n positive integers. For each of them determine whether it is Т-prime or not.

我们知道,质数是指恰好有两个不同正因数的正整数。类似地,若一个正整数 tt 恰好有三个不同的正因数,则称其为 Т-质数(T-prime)。

给定一个包含 nn 个正整数的数组。对其中每个数,判断它是否为 Т-质数。

输入格式

The first line contains a single positive integer, n (1 ≤ n ≤ 105), showing how many numbers are in the array. The next line contains n space-separated integers x__i (1 ≤ x__i ≤ 1012).

Please, do not use the %lld specifier to read or write 64-bit integers in С++. It is advised to use the cin, cout streams or the %I64d specifier.

第一行包含一个正整数 nn(1≤n≤1051 \leq n \leq 10^5),表示数组中数字的个数。下一行包含 nn 个以空格分隔的整数 xix_i(1≤xi≤10121 \leq x_i \leq 10^{12})。

请注意:在 C++ 中,不要使用 %lld 说明符来读取或写入 64 位整数。建议使用 cin、cout 流,或 %I64d 说明符。

输出格式

Print n lines: the i-th line should contain "YES" (without the quotes), if number x__i is Т-prime, and "NO" (without the quotes), if it isn't.

输出 n 行:第 i 行应包含 "YES"(不带引号),如果数 x__i 是 Т-素数;否则包含 "NO"(不带引号)。

输入输出样例

  • 输入#1

    3
    4 5 6

    输出#1

    YES
    NO
    NO

说明/提示

The given test has three numbers. The first number 4 has exactly three divisors — 1, 2 and 4, thus the answer for this number is "YES". The second number 5 has two divisors (1 and 5), and the third number 6 has four divisors (1, 2, 3, 6), hence the answer for them is "NO".

给定的测试包含三个数字。第一个数字 4 恰好有三个正因数——1、2 和 4,因此该数字的答案为 “YES”。第二个数字 5 有两个正因数(1 和 5),第三个数字 6 有四个正因数(1、2、3、6),因此它们的答案均为 “NO”。

输入解题思路,AI测评打分。不知道怎么写?

首页