PAT 1088 三人行

题目链接:
注1 由题可推知甲乙都是整数,但丙不一定是,要定义成double型
AC代码

#include
#include
using namespace std;
void Output(int M,double num){
	cout<<" ";
	if(M>num) cout<<"Gai";
	else if(M<num) cout<<"Cong";
	else cout<<"Ping";
}
int main(){
	int M,X,Y;
	cin>>M>>X>>Y;
	int jia,yi,max=0;//分别表示甲乙丙能力值
	double bing;
	for(int i=10;i<=99;i++){
		jia=i;
		yi=(i%10)*10+i/10;
		double t=abs(jia-yi)*1.0/X;
		if(yi==t*Y&&jia>max) max=jia;
	}
	if(max){
		jia=max;yi=(jia%10)*10+jia/10;bing=yi*1.0/Y;
		cout<<jia;
		Output(M,jia);Output(M,yi);Output(M,bing);
	}else cout<<"No Solution";
	return 0;
}

你可能感兴趣的:(pat)