Infinite String Comparision
思路:
这道题看起来不是很难,但是里面omparing a∞-b∞,所以需要注意两个字符串比较的方式。在比较的时候用循环,并不需要将不同长度的字符串重复,延长类似无穷长进行比较,只需要将两者各自循环重复一次若无答案便说明二者“=”,否则会出现a[i]>a[j]或a[i]<a[j]的。
代码如下:
#include <iostream>
#include <string>
using namespace std;
int main()
{int i,j,flag=0;string a,b;while(cin>>a>>b){i=0;j=0;long long cnt=0;if(a.size()>=b.size()){flag=0;}else {flag=1;}while(1){if(cnt==2){cout<<"="<<endl;break;} if(i==a.size()){i=0;if(flag==0)cnt++;}if(j==b.size()){j=0;if(flag==1)cnt++;}if(a[i]==b[j]){i++;j++;continue;}if(a[i]>b[j]){cout<<">"<<endl;break;}if(a[i]<b[j]){cout<<"<"<<endl;break;}i++;j++;}}return 0;
}
输入数据:
aa
b
zzz
zz
aba
abaa
输出数据:
<
=
.>