第六个测试点RE,求助
查看原帖
第六个测试点RE,求助
1041404
Zmeiying楼主2023/8/11 17:29
#include<iostream>
#include<cstdio>
using namespace std;

int main(){
	int a,b,c,tmp=0,tmp2=0,l,m,n;
	cin>>a>>b>>c;
	int x,y,z,o,p,w;
	x=0;
	y=0;
	z=0;
	int e[10],d[10];
	memset(d,0,sizeof(d));
	for(int i=1;i<=9;i++)
		e[i]=i;
	for(int i=1;i<=9;i++)
		for(int j=1;j<=9;j++)
			for(int k=1;k<=9;k++){
				n=0;
				m=0;
				l=0;
				w=0;
				p=0;
				o=0;
				x=i*100+j*10+k;
				y=x*b/a;
				z=y*c/b;
				if(y<1000 && z<1000){
					n=y%10;
					m=(y%100-n)/10;
					l=(y-y%100)/100;
					w=z%10;
					p=(z%100-w)/10;
					o=(z-z%100)/100;
				
			//	cout<<x<<" "<<y<<" "<<z<<" "<<i<<" "<<j<<" "<<k<<" "<<l<<" "<<m<<" "<<n<<" "<<o<<" "<<p<<" "<<w<<" ";
				memset(d,0,sizeof(d));
				
				for(int q=1;q<=9;q++){
					/*if(i==e[q] || k==e[q] || j==e[q] || l==e[q] || m==e[q] || n==e[q] || o==e[q] || p==e[q] || w==e[q])
					d[q]++;*/
					if(i==e[q]) d[q]++;
					if(j==e[q]) d[q]++;
					if(k==e[q]) d[q]++;
					if(l==e[q]) d[q]++;
					if(m==e[q]) d[q]++;
					if(n==e[q]) d[q]++;
					if(o==e[q]) d[q]++;
					if(p==e[q]) d[q]++;
					if(w==e[q]) d[q]++;
				}
				for(int q=1;q<=9;q++){
					if(d[q]!=1) tmp=1;
				}
				//cout<<x;
				if(tmp==0){
					cout<<x<<" "<<y<<" "<<z<<endl;
					tmp2=1;
				}
				}
				//cout<<endl;
				tmp=0;
			}
	if(tmp2==0) cout<<"No!!!";	
	return 0;
}
2023/8/11 17:29
加载中...