一、0 的个数
1、题目描述
给定一个正整数 n ,请问 n 的十进制表示中末尾总共有几个 0 ?
输入格式
输入一行包含一个正整数
输出格式
输出一个整数,表示答案。
样例输入
20220000
样例输出
4
评测用例规模与约定
对于所有评测用例,1 <= n <= 1000000000。
2、解题思路
需要求末尾有多少个零,则不断取余计算有多少个零即可。
3、AC代码
#include <iostream>
using namespace std;
int main()
{
int n,cnt = 0;
cin>>n;
while(n%10 == 0)
{
n/=10;
cnt++;
}
cout<<cnt;
return 0;
}
4、算法分析
- 直接使用循环暴力解题即可。
二、超级质数
1、问题描述
如果一个质数 P 的每位数字都是质数, 而且每两个相邻的数字组成的两位 数是质数, 而且每三位相邻的数字组成的三位数是质数, 依次类推, 如果每相 邻的 k 位数字组成的 k 位数都是质数, 则 P 称为超级质数。
如果把超级质数 P 看成一个字符串, 则这个超级质数的每个子串都是质 数。
例如, 53 是一个超级质数。
请问, 最大的超级质数是多少?