CCF GESP 2023年6月认证 C++ 2级

编程题
共 2 道 每题 25 分 共计 50 分
第 1 题
找素数
时间限制:1s 内存限制:512MB

题目描述

小明刚刚学习了素数的概念:如果一个大于 $1$ 的正整数,除了 $1$ 和它自身外,不能被其他正整数整除,则这个正整数是素数。现在,小明想找到两个正整数 $A$ 和 $B$ 之间(包括 $A$ 和 $B$)有多少个素数。

输入格式

输入 2 行,第一行包含正整数 $A$,第二行包含正整数 $B$。约定 $2 \le A \le B \le 1000$。

输出格式

输出一行,包含一个整数 $C$,表示找到 $C$ 个素数。

样例说明

样例 1

输入:
2
10
输出:
4

样例 2

输入:
98
100
输出:
0
第 2 题
自幂数判断
时间限制:1s 内存限制:512MB

题目描述

自幂数是指,一个 $N$ 位数,满足各位数字 $N$ 次方之和是本身。例如,$153$ 是 $3$ 位数,其每位数的 $3$ 次方之和,$1^3+5^3+3^3=153$,因此 $153$ 是自幂数;$1634$ 是 $4$ 位数,其每位数的 $4$ 次方之和,$1^4+6^4+3^4+4^4=1634$,因此 $1634$ 是自幂数。

现在,输入若干个正整数,请判断它们是否是自幂数。

输入格式

输入第一行是一个正整数 $M$,表示有 $M$ 个待判断的正整数。约定 $1 \le M \le 100$。

从第 $2$ 行开始的 $M$ 行,每行一个待判断的正整数。约定这些正整数均小于 $10^8$。

输出格式

输出 $M$ 行,如果对应的待判断正整数为自幂数,则输出英文大写字母 $\texttt T$,否则输出英文大写字母 $\texttt F$。

提示:不需要等到所有输入结束在依次输出,可以输入一个数就判断一个数并输出,再输入下一个数。

样例说明

样例 1

输入:
3
152
111
153
输出:
F
F
T

样例 2

输入:
5
8208
548834
88593477
12345
5432
输出:
T
T
T
F
F
编程题部分已到底了。