Li_Junlin @ 2023-08-11 09:36:55
我用的是穷举,最暴力的
有神牛帮忙看看吗?
123 456 789 的输入过不了
#include<iostream>
#include<cmath>
using namespace std;
int a[3];
int b[3];
int c[3];
int z,x,y,j,k,l,flag;
int main()
{
scanf("%d%d%d",&j,&k,&l);
for(z=123;z<=1000/l;z++)
{
if(k%j==0||l%j==0)
{
x=(k/j)*z;
y=(l/j)*z;
a[0]=z%10;
a[1]=(z/10)%10;
a[2]=z/100;
b[0]=x%10;
b[1]=(x/10)%10;
b[2]=x/100;
c[0]=y%10;
c[1]=(y/10)%10;
c[2]=y/100;
if(a[0]!=0&&a[1]!=0&&a[2]!=0&&b[0]!=0&&b[1]!=0&&b[2]!=0&&c[0]!=0&&c[1]!=0&&c[2]!=0)
{
if(a[0]!=a[1]&&a[1]!=a[2]&&a[2]!=a[0]&&b[0]!=b[1]&&b[1]!=b[2]&&b[2]!=b[0]&&c[0]!=c[1]&&c[1]!=c[2]&&c[2]!=c[0])
{
if(a[0]!=b[0]&&a[0]!=c[0]&&a[0]!=b[1]&&a[0]!=c[1]&&a[0]!=b[2]&&a[0]!=c[2])
{
if(a[1]!=b[0]&&a[1]!=c[0]&&a[1]!=b[1]&&a[1]!=c[1]&&a[1]!=b[2]&&a[1]!=c[2])
{
if(a[2]!=b[0]&&a[2]!=c[0]&&a[2]!=b[1]&&a[2]!=c[1]&&a[2]!=b[2]&&a[2]!=c[2])
{
if(b[0]!=c[0]&&b[0]!=c[1]&&b[0]!=c[2]&&b[1]!=c[1]&&b[1]!=c[0]&&b[1]!=c[2])
{
if(b[2]!=c[0]&&b[2]!=c[1]&&b[2]!=c[2])
{
printf("%d %d %d\n",z,x,y);
flag=1;
}
}
}
}
}
}
}
}
else continue;
}
if(flag==0) printf("No!!!");
return 0;
}
by _s_z_y_ @ 2023-08-11 09:39:44
@Li_Junlin WR
是什么?
by Weizhuo_Zhao @ 2023-08-11 09:40:06
第七行:
int z,x,y,j,k,l,flag;
你的x,y变量不是关键词为什么会加粗?
by Weizhuo_Zhao @ 2023-08-11 09:40:29
@_s_zy 他打错了,应该是WA
by Bingxiu @ 2023-08-11 09:41:12
@Li_Junlin if(k%j==0||l%j==0)
你确定
by Li_Junlin @ 2023-08-11 09:44:09
@Bingxiu 解决了
by Li_Junlin @ 2023-08-11 09:47:49
最后暴力判断j=0和123 456 789的情况,AC了 谢谢提醒