题解 | #3和5#

3和5

https://ac.nowcoder.com/acm/problem/22189

第二次从我之前的博客中引用一段

我觉得对于初学者来说难点在于如何把数字一位位地取出来。

一种比较通用的方法是将它对10取模,然后除以十(相当于舍去个位,原来的十位成为新的个位,以此类推)。

由于不清楚数字的位数,使用 while 循环的同时利用 C++ 非 00 即为真的特性判断是否取完即可。

#include<stdio.h>
int n;
int main(){
    scanf("%d",&n);
    for(int i=3;i<=n;i+=3){
        int t=i;
        while(t){
            if(t%10==5){
                printf("%d\n",i);
                break;
            }
            t/=10;
        }
    }
}
题解 文章被收录于专栏

https://ayx.moefox.tech/

全部评论

相关推荐

11-09 01:22
已编辑
东南大学 Java
高级特工穿山甲:羡慕,我秋招有家企业在茶馆组织线下面试,约我过去“喝茶详谈”😢结果我去了发现原来是人家喝茶我看着
点赞 评论 收藏
分享
评论
2
收藏
分享
牛客网
牛客企业服务