题目描述
给你两个十进制正整数 a, ba,b,输出将这两个数翻转后的较大数。
「翻转」在本题中的定义详见「说明 / 提示」部分。
输入格式
第一行,两个十进制正整数 a, ba,b。
输出格式
第一行,aa 和 bb 翻转后的较大数。
输入输出样例
输入 #1
734 893
输出 #1
437
输入 #2
221 231
输出 #2
132
输入 #3
839 237
输出 #3
938
说明/提示
「翻转」在本题中的定义
设原数有 ff 位,最高位为 a_1a1,第二位为 a_2a2,……,第 ff 位为 a_faf。
那么该数的翻转同样有 ff 位,最高位为为 a_faf,第二位为 a_{f - 1}af−1,……,第 ff 位为 a_1a1。
数据规模及约定
对于 100\%100% 的数据,100 \le a, b \le 999100≤a,b≤999,a, ba,b 不含 00 或不为 00。
说明
翻译自 COCI 2009-2010 #3 T1 FILIP,满分 30,每个测试点 3 分,共 10 个测试点。
CODE
#include <iostream>
#include <string>
using namespace std;
string a,b;
void pr(string x){
for(int i=x.length()-1; i>=0; i--)
cout << x[i];
cout << endl;
}
bool comp(string x, string y){
if(x.size() != y.size())
return x.size() > y.size();
else{
for(int i=x.size()-1; i>=0; i--)
if(x[i] != y[i])
return x[i] > y[i];
}
}
int main(){
cin >> a >> b;
if(comp(a, b)) pr(a);
else pr(b);
return 0;
}