1003_other2.cpp

来自「ACM1000_1010竞赛的赛题,源码」· C++ 代码 · 共 35 行

CPP
35
字号
 //accepted
 //by just for play
 
 #include<iostream.h>
 int can;
 int test(long a,long  b,int c){

	if(b==1) can=1;
	if(a==1&&b==1) return 1;
	if(c>100) return 0;
	while(a%c!=0&&b%c!=0&&c<=100){ c++;}
	if(c>100)	return 0;


	if(a%c==0)
		if(test(a/c,b,c+1)) return 1;
	if(b%c==0)
		if(test(a,b/c,c+1)) return 1;
	if(test(a,b,c+1)) return 1;
   return 0;
 }

 int main(){
	long  a,b;
	while(cin>>a>>b){
		can=0;
		long  max=(a>b)?a:b;
		long  min=(a<b)?a:b;
		int flag=test(max,min,2);
		if(flag==0&&can==1) cout<<min<<endl;
		else cout<<max<<endl;
	}
	return 0;
 }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?