题目背景
本题为提交答案题,您可以写程序或手算在本机上算出答案后,直接提交答案文本,也可提交答案生成程序。
题目描述
将1,2, \cdots ,91,2,⋯,9共99个数分成33组,分别组成33个三位数,且使这33个三位数构成1:2:31:2:3的比例,试求出所有满足条件的33个三位数。
输入输出格式
输入格式:
木有输入
输出格式:
若干行,每行33个数字。按照每行第11个数字升序排列。
输入输出样例
输入样例#1: 复制
无
输出样例#1: 复制
192 384 576 * * * ... * * * (输出被和谐了)
学习的人家的代码。
#include<iostream>
using namespace std;
int main()
{
int i,j,k,m,sum;
int a[10];
for(i=123;i*3<=987;i++)//由于数字不重复,故区间范围从123-987
{
for(m=1;m<10;m++)?a[m]=0;//全部初始化为0
a[i/100]=1;//第一个三位数的百位
a[i/10%10]=1;//第一个三位数的十位
a[i%10]=1;//第一个三位数的个位
j=i*2;//第二个三位数,与第一个三位数满足1:2的关系
a[j/100]=1;//第二个三位数的百位
a[j/10%10]=1;//第二个三位数的十位
a[j%10]=1;//第二个三位数的个位
k=i*3;//第三个三位数,与第一个、第二个三位数满足1:2:3的关系
a[k/100]=1;//第三个三位数的百位
a[k/10%10]=1;//第三个三位数的十位
a[k%10]=1;//第三个三位数的个位
for(sum=0,m=1;m<10;m++)
sum=sum+a[m];//将存储三个数位的数组元素相加
if(sum==9)
cout<<i<<" "<<j<<" "<<k<<endl;//若恰好为9,说明满足题设,输出
}
return 0;
}