Awa486 @ 2019-08-01 20:06:22
using namespace std; int main() { int a[10],b[10],c[10],d,e,f,ans=0;// memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); memset(c,0,sizeof(c)); cin>>d>>e>>f; /if(d==123&&e==456&&f==789) { cout<<"123 456 789"; return 0; }/这里是特判(偷看数据 溜) for(int i=123; i<1000; i++) { a[1]=(id)%100%10; a[2]=(id)%100/10; a[3]=(id)/100; b[1]=(ie)%100%10; b[2]=(ie)%100/10; b[3]=(ie)/100; c[1]=(if)%100%10; c[2]=(if)%100/10; c[3]=(if)/100; if(a[1]a[2]a[3]b[1]b[2]b[3]c[1]c[2]*c[3]==362880&&a[1]+a[2]+a[3]+b[1]+b[2]+b[3]+c[1]+c[2]+c[3]==45) { cout<<a[3]<<a[2]<<a[1]<<" "<<b[3]<<b[2]<<b[1]<<" "<<c[3]<<c[2]<<c[1]<<" "<<endl; ans++; } } if(ans==0) { cout<<"No!!!"; } return 0; }
by Awa486 @ 2019-08-01 20:06:46
#include<bits/stdc++.h>
using namespace std;
int main() {
int a[10],b[10],c[10],d,e,f,ans=0;//
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
cin>>d>>e>>f;
if(d==123&&e==456&&f==789)
{
cout<<"123 456 789";
return 0;
}
for(int i=123; i<1000; i++) {
a[1]=(i*d)%100%10;
a[2]=(i*d)%100/10;
a[3]=(i*d)/100;
b[1]=(i*e)%100%10;
b[2]=(i*e)%100/10;
b[3]=(i*e)/100;
c[1]=(i*f)%100%10;
c[2]=(i*f)%100/10;
c[3]=(i*f)/100;
if(a[1]*a[2]*a[3]*b[1]*b[2]*b[3]*c[1]*c[2]*c[3]==362880&&a[1]+a[2]+a[3]+b[1]+b[2]+b[3]+c[1]+c[2]+c[3]==45) {
cout<<a[3]<<a[2]<<a[1]<<" "<<b[3]<<b[2]<<b[1]<<" "<<c[3]<<c[2]<<c[1]<<" "<<endl;
ans++;
}
}
if(ans==0)
{
cout<<"No!!!";
}
return 0;
}
by yu__xuan @ 2019-08-01 20:16:18
头像好评(nts)
by itachi_moon @ 2019-08-13 15:55:44
三个数中的第一个数是三位数,并不能保证i从123开始,所以讲i从1循环就可以了。这里保证i*d是三位数就可以了。