一、题目背景
本题为提交答案题,您可以写程序或手算在本机上算出答案后,直接提交答案文本,也可提交答案生成程序。 题目描述 将1,2,…,9共9个数分成三组,分别组成三个三位数,且使这三个三位数构成1:2:3的比例,试求出所有满足条件的三个三位数。
输入输出格式 输入格式: 木有输入 输出格式: 若干行,每行3个数字。按照每行第一个数字升序排列。
输出样例: 192 384 576 * * * …………………… * * *
二、分析: 简单的暴力枚举题,唯一需注意的是要每次清零,注意:本题最难的地方在于9个数不能重复
三、代码: #include<stdio.h> #include<string.h> int a[10]; int main(){ for (int x=123;x<=329;x++){ //枚举 int i=x,j=x*2,k=x*3; int o=i,p=j,q=k; int flag=0; //清零 memset(a,0,sizeof(a)); while(i>0){ //取数 a[i%10]++; i/=10; } if(flag==1) continue; while(j>0){ a[j%10]++; j/=10; } while(k>0){ a[k%10]++; k/=10; } for (int w=1;w<=9;w++){ //判断 if(a[w]!=1) flag=1; } if(flag==0) printf("%d %d %d\n",o,p,q); //输出 } return 0; }