题意:多组输入。给你两个字符串,每个字符串可以以自身为单位无限延长, 试问:延长之后的两个字符串字典序大小
输入:
aa
b
zzz
zz
aba
abaa
输出:
<
=
>
第三个样例。abaabaaba...与abaaabaaabaa相比字典序 <
hint:
数据弱。分别扩充两倍再比较字典序大小就好了。
AC代码:
#include<bits/stdc++.h>
#define PB push_back
#define PII pair<int,int>
#define PLL pair<long long,long long>
#define FI first
#define SE second
#define mem(a) memset(a,0,sizeof(a))
#define ios ios::sync_with_stdio(false);cin.tie(0);cout.tie(0)
using namespace std;
typedef long long LL;
typedef unsigned long long ULL;
const int INF = 0x3f3f3f3f;
const double pi=acos(-1),eps=1e-8;
const LL maxn = 1<<17;
const int mod = 1e9+7;
const int N = 4e5+5;
int main(){
ios;
string a,b;
while(cin>>a>>b){
//分别扩充两倍
a+=a;
b+=b;
int l1 = a.length(), l2 = b.length();
int maxh = max(l1 , l2), flag = 0;
for(int i = 0 ; i < maxh ; i ++){
if(a[i % l1] < b[i % l2]){
flag = 1;
}else if(a[i % l1] > b[i % l2]){
flag = 2;
}
if(flag)break;
}
if(flag){
if(flag == 1)cout << "<" <<endl;
else cout << ">" << endl;
}else cout << "=" << endl;
}
return 0;
}