aciel @ 2023-01-12 00:33:30
#include <stdio.h>
int main()
{
int a,b,c;
int cnt=0;
scanf("%d %d %d",&a,&b,&c);
for(int i=123;i<333;i++){
if(i%a==0){//整除
int j=i/a*b;//按比例计算
int k=i/a*c;
int n=i/100+i/10%10+i%10+j/100+j/10%10+j%10+k/100+k/10%10+k%10;
int m=(i/100)*(i/10%10)*(i%10)*(j/100)*(j/10%10)*(j%10)*(k/100)*(k/10%10)*(k%10);
if(n==(1+2+3+4+5+6+7+8+9) && m==(1*2*3*4*5*6*7*8*9)){
cnt++;
printf("%d %d %d\n",i,j,k);
}
}
}
if(cnt==0){
printf("No!!!\n");
}
return 0;
}
by Joker_lazydoghead @ 2023-01-12 14:07:58
!不是英文的+没有判断是否为0
Code:
#include <stdio.h>
int main()
{
int a,b,c;
int cnt=0;
scanf("%d %d %d",&a,&b,&c);
if((a==0||b==0||c==0)||(c>333&&c<400)){
printf("No!!!\n");
return 0;
}
for(int i=123;i<333;i++){
if(i%a==0){//整除
int j=i/a*b;//按比例计算
int k=i/a*c;
int n=i/100+i/10%10+i%10+j/100+j/10%10+j%10+k/100+k/10%10+k%10;
int m=(i/100)*(i/10%10)*(i%10)*(j/100)*(j/10%10)*(j%10)*(k/100)*(k/10%10)*(k%10);
if(n==(1+2+3+4+5+6+7+8+9) && m==(1*2*3*4*5*6*7*8*9)){
cnt++;
printf("%d %d %d\n",i,j,k);
}
}
}
if(cnt==0){
printf("No!!!\n");
}
return 0;
}
by aciel @ 2023-01-13 00:22:02
感谢!!!
by DINGYURS @ 2023-01-28 18:20:49
@aciel 输入789 456 123 时,这个代码有问题
by DINGYURS @ 2023-01-28 18:27:42
@DINGYURS 对不起,原来A<B<C