猪君zhujun @ 2019-02-07 22:41:09
第五个点
似乎非常非常......坑!为何我只有80分?求助!
#include <iostream>
using namespace std;
int x,xx,xxx;
int a[10];
bool b,bb;
int i,j;
int A,B,C;
int main()
{
cin>>A>>B>>C;bb=true;
for (int q=123; q<=987; q++)
{
x=q*A;
xx=q*B;
xxx=q*C;
if (x>=100 && x<=999 && xx>=100 && xx<=999 && xxx>=100 && xxx<=999)
{
for (i=0; i<=9; i++) a[i]=1;
a[x/1%10]--;
a[x/10%10]--;
a[x/100%10]--;
a[xx/1%10]--;
a[xx/10%10]--;
a[xx/100%10]--;
a[xxx/1%10]--;
a[xxx/10%10]--;
a[xxx/100%10]--;
b=true;
for (i=1; i<=9; i++) if (a[i]!=0)b=false;
if (b) {bb=false;cout<<x<<' '<<xx<<' '<<xxx<<endl;}
}
}
if (bb)cout<<"No!!!";
return 0;
}
有哪位神犇知道吗?(感觉自己懵(~ ̄(OO) ̄)ブ)
by 猪君zhujun @ 2019-02-07 22:41:55
有哪位神犇知道吗?急!!!
by pigstd @ 2019-02-07 22:44:03
@JASON0716
第5个点是:
123 456 789
for 循环的q要从1开始
我也错过
by 猪君zhujun @ 2019-02-07 22:50:17
已AC!! 谢谢大佬!!!!!(膜拜)
AC代码(其实只要将for循环的q改为小于123的正整数即可)
#include <iostream>
using namespace std;
int x,xx,xxx;
int a[10];
bool b,bb;
int i,j;
int A,B,C;
int main()
{
cin>>A>>B>>C;bb=true;
for (int q=1; q<=987; q++)
{
x=q*A;
xx=q*B;
xxx=q*C;
if (x>=100 && x<=999 && xx>=100 && xx<=999 && xxx>=100 && xxx<=999)
{
for (i=0; i<=9; i++) a[i]=1;
a[x/1%10]--;
a[x/10%10]--;
a[x/100%10]--;
a[xx/1%10]--;
a[xx/10%10]--;
a[xx/100%10]--;
a[xxx/1%10]--;
a[xxx/10%10]--;
a[xxx/100%10]--;
b=true;
for (i=1; i<=9; i++) if (a[i]!=0)b=false;
if (b) {bb=false;cout<<x<<' '<<xx<<' '<<xxx<<endl;}
}
}
if (bb)cout<<"No!!!";
return 0;
}
TAP:好坑呀~~
by Arqiu @ 2019-03-23 00:06:24
@zhu_jun “for循环q改为小于123的正整数”不对吧= =,会出错呀,老哥你再仔细瞅瞅