为什么60分? 测试数据过了,求大犇指点

P1618 三连击(升级版)

lxyhhhhhh @ 2017-07-08 15:32:37

#include<cstdio>
#include<iostream>
#include<cstring>
#include<cmath>
using namespace std;
int main()
{ int j,k,i,n=0,m;
    int a,b,c;
    int q=0;
    cin>>a>>b>>c;
    for(i=1;i<333;i++)
    {    j=i*b;
        k=i*c;

if ( (i/100)*(i/10%10)*(i%10)*(j/100)*(j/10%10)*(j%10)*(k/100)*(k/10%10)*(k%10)==1*2*3*4*5*6*7*8*9

&&(i/100)!=(i/10%10)!=(i%10)!=(j/100)!=(j/10%10)!=(j%10)!=(k/100)!=(k/10%10)!=(k%10) && i<=999 && j<=999 && k<=999

&&(i/100)+(i/10%10)+(i%10)+(j/100)+(j/10%10)+(j%10)+(k/100)+(k/10%10)+(k%10)==45)

        {    cout<<i<<" "<<j<<" "<<k<<" "<<endl;
            q++;
        }
    }
    if(q==0)
    cout<<"No!!!"<<endl;
    return 0;
}

by 北极熊 @ 2017-07-15 10:11:41

a不一定等于1,所以

j=i*b/a;

k=i*c/a;


|