题目大意:有两串字符串,可以无限重复延长,比较他们的字典序大小。
解题思路:利用字符串长度最长为1e5,直接循环字符串暴力解决即可(关键加if(nu1= =aa&&nu2= =bb))
代码如下:
#include<iostream>
#include<algorithm>
#include<string>
#include<cstring>
using namespace std;
typedef long long ll;
ll check(string a,string b)
{
ll z=0;
ll aa=a.length();
ll bb=b.length();
ll nu1=0;
ll nu2=0;
char h1,h2;
while(1)
{
z++;
if(nu1==aa&&nu2==bb)
{
// cout<<h1<<" "<<h2<<endl;
h1=a[nu1];
h2=b[nu2];
break;
}
if(nu1==aa)
nu1=0;
if(nu2==bb)
nu2=0;
if(a[nu1]!=b[nu2])
{
// cout<<h1<<" "<<h2<<endl;
h1=a[nu1];
h2=b[nu2];
break;
}
nu1++;
nu2++;
if(z>500000)
{
// cout<<"aaaa"<<endl;
h1=a[nu1];
h2=b[nu2];
break;
}
}
// cout<<"a[nu1]="<<h1<<" "<<"b[nu2]="<<h2<<endl;
if(h1>h2)
return 3;
else if(h1==h2)
return 2;
else if(h1<h2)
return 1;
}
int main()
{
string a,b;
while(cin>>a>>b)
{
ll x=check(a,b);
if(x==1)
cout<<"<"<<endl;
else if(x==2)
cout<<"="<<endl;
else if(x==3)
cout<<">"<<endl;
scanf(" ");
}
return 0;
}