题目背景
本题为提交答案题,您可以写程序或手算在本机上算出答案后,直接提交答案文本,也可提交答案生成程序。
题目描述
将1,2, ⋯,9共99个数分成3组,分别组成3个三位数,且使这3个三位数构成1:2:3的比例,试求出所有满足条件的3个三位数。
输入格式
木有输入
输出格式
若干行,每行33个数字。按照每行第11个数字升序排列。
输入输出样例
输入 #1
无
输出 #1
192 384 576
* * *
... * * *
(输出被和谐了)
思路: 暴力模拟求解。代码如下:
#include <bits/stdc++.h>
#define LL long long
using namespace std;
bool judge(int x,int y,int z){
int d[9];
d[0]=x/100;
d[1]=x/10%10;
d[2]=x%10;
d[3]=y/100;
d[4]=y/10%10;
d[5]=y%10;
d[6]=z/100;
d[7]=z/10%10;
d[8]=z%10;
sort(d,d+9);
for(int i=0;i<9;i++){
if(d[i]==i+1)continue;
else {
x=-1;
break;
}
}
if(x==-1){
return false;
}
else{
return true;
}
}
int main()
{
for(int i=1;i<=9;i++){
for(int j=1;j<=9;j++){
for(int k=1;k<=9;k++){
int x=i*100+j*10+k;
int y=x*2,z=x*3;
if(judge(x,y,z))printf("%d %d %d\n",x,y,z);
}
}
}
return 0;
}