洛谷训练P1008(循环+暴力)

 

 

复制代码
 1 #include<stdio.h>
 2 #include<string.h>
 3 int a[10];
 4 int main(){
 5     for (int x=123;x<=329;x++){     //枚举
 6         int i=x,j=x*2,k=x*3;
 7         int o=i,p=j,q=k;
 8         int flag=0;                         //清零
 9         memset(a,0,sizeof(a));    //使数组a中所有存放内容的值全为0 
10         while(i > 0){                        //取数
11             a[i%10]++;
12             i/=10;
13         }
14         if(flag==1) continue;
15         while(j > 0){
16             a[j%10]++;
17             j/=10;
18         }
19         while(k > 0){
20             a[k%10]++;
21             k/=10;
22         }
23         for (int w=1;w<=9;w++){  //判断
24             if(a[w]!=1) flag=1;
25         }
26         if(flag==0) printf("%d %d %d\n",o,p,q);  //输出
27     }
28     return 0;
29 }
复制代码

简单的暴力枚举题,唯一需注意的是要每次清零

 

 //每次循环时设定满足1:2:3倍数关系的三个数字,巧妙地让a[x]中的x分别代表数字1~9,每次初始值清零,出现一次+1,最后用if(a[w] == 1)判断每个数字出现的次数,如果都为1则输出o,p,q

posted @   EPEP  阅读(715)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示