P1618 三连击(升级版) - 洛谷 | 计算机科学教育新生态
三连击(升级版)
题目描述
将 1, 2, ...9共 9个数分成三组,分别组成三个三位数,且使这三个三位数的比例是 A:B:C,试求出所有满足条件的三个三位数,若无解,输出 `No!!!`。
//感谢黄小U饮品完善题意
输入格式
三个数,A,B,C。
输出格式
若干行,每行 3个数字。按照每行第一个数字升序排列。
样例 #1
样例输入
1 2 3
样例输出
192 384 576
219 438 657
273 546 819
327 654 981
提示
保证 A<B<C。
代码区:
#include<stdio.h>
int main()
{
int t[10]={0};
int i,a,b,c,n1,n2,n3,number,flag=0,ans=0;
scanf("%d%d%d",&a,&b,&c);
for(number=1;number<=1000/c;number++){
n1=a*number;
n2=b*number;
n3=c*number;
for(i=0;i<3;i++){
t[n1%10]++;
n1/=10;
}
for(i=0;i<3;i++){
t[n2%10]++;
n2/=10;
}
for(i=0;i<3;i++){
t[n3%10]++;
n3/=10;
}
for(i=1;i<=9;i++)
{
if(t[i]!=1){
flag=1;
break;
}
}
if(flag==0){
printf("%d %d %d\n",number*a,number*b,number*c);
ans++;
}
else
flag=0;
for(i=1;i<=9;i++)
t[i]=0;
}
if(!ans)
printf("No!!!");
return 0;
}
欢迎各位读者提出意见。
(菜菜洛谷奋斗小日记)
标签:洛谷,int,d%,样例,number,三位数,P1618 From: https://blog.csdn.net/2402_88149600/article/details/143697899