2020牛客多校第一场F题 Infinite String Comparision(字符匹配+神奇的周期引理)

2020牛客多校第一场F题Infinite String Comparision

2020牛客多校第一场F题 Infinite String Comparision(字符匹配+神奇的周期引理)_第1张图片
由犇犇PPT得到周期性引理:匹配长度应等于a+b-gcd(a,b)

然后除了引理不咋理解但是纸上画画觉得还有点道理就先这样,等到见到了在做学习

代码就成了:

#include
using namespace std;
string a,b;
int len,f;
int gcd(int x,int y){
	return x%y?gcd(y,x%y):y;
}
int main(){
	while(cin>>a>>b){
		f=1;
		len = a.size()+b.size()-gcd(a.size(),b.size());
		for(int i=0;i<len;i++){
			if(a[i%a.size()]>b[i%b.size()]){
				printf(">\n");
				f=0;
				break;
			}
			else if(a[i%a.size()]<b[i%b.size()]){
				printf("<\n");
				f=0;
				break;
			}
		}
		if(f)
			printf("=\n");
	}
	return 0;
}

你可能感兴趣的:(数论,算法,字符串)