先放一下代码
#include<bits/stdc++.h>
using namespace std;
int main()
{
int A,B,C;
cin>>A>>B>>C;
int ans=0;
for(int i=123;i<=987;i++)
{
int a=i;
int b=B*a;
int c=C*a;
if(b%A==0) b/=A;
else continue;
if(c%A==0) c/=A;
else continue;
//至此,至少是3个整数满足了比例
if(c>987) continue; //保证都是3位数
//检验9个数的使用
int flag=1;
char chart[20];
int cou[10]={0};
sprintf(chart,"%d%d%d",a,b,c);
for(int i=0;i<strlen(chart);i++)
{
cou[chart[i]-'0']++;
if(cou[chart[i]-'0']==2)
{
flag=0;
break;
}
}
if(cou[0]!=0) flag=0;
if(flag==0) continue;
cout<<a<<" "<<b<<" "<<c<<endl;
ans=1;
}
if(ans==0) cout<<"No!!!\n";
return 0;
}
我发现
当我正常提交时,结果为
开了O2之后
请问各位大佬,这是什么情况?
是我代码写的太复杂了吗,还是说这是平台的问题
如果不开O2,有什么办法可以让它过吗
提前感谢各位