hello呀,小同伴们,这是第16届蓝桥杯第二道填空题,和第一道填空题一样也是非常基础的题目,有C语言基础基本都可以解,下面我讲讲我其时本身的思绪和想法,如果你们有更优化的代码和思绪,也可以分享分享
这道题目也是思量 / 和 % 的基本利用符运算,我们可以设置一个循环,每次%这个数x,拿到个位这个数,然后用三个变量分别统计 2, 0, 5 的个数,末了检察变量个数是否符合有俩个2,一个0,一个5即可,如果满意,那么就符合2025这道题
- #include <iostream>
- using namespace std;
- int n1, n2, n3;//分别统计0,2, 5个数
- long long cnt;//统计有多少个2025
- int main()
- {
- for(long long i = 1; i <= 20250412; ++i)
- {
- long long tmp = i;//用临时变量tmp保存这个i,不可以让i执行下面代码,否则i会被改变
- while(tmp)
- {
- //拿到个位数,看是否有0,2,5,用计数器++
- if(tmp % 10 == 0) ++n1;
- else if(tmp % 10 == 2) ++n2;
- else if(tmp % 10 == 5) ++n3;
-
- tmp /= 10;//去掉个位数
- }
- if(n1 >= 1 && n2 >= 2 && n3 >= 1) cnt++;//如果这个数包含 1个0 2个2 1个5 ,那么cnt++
-
- n1 = n2 = n3 = 0;//计数器要清空,用于下一个数统计
- }
- cout << cnt << endl;
- return 0;
- }
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
|