首页 > 其他分享 >403 循环同构判断

403 循环同构判断

时间:2024-12-25 16:59:15浏览次数:2  
标签:输出 同构 int 样例 循环 403 字符串

// 403 循环同构判断.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

/*
http://oj.daimayuan.top/course/22/problem/936

给你两个字符串 a,b
,字符串均由小写字母组成,你需要判断这两个字符串是否循环同构。

是的话输出 Yes,否则输出 No。

输入格式
第一行一个字符串 a
。

第二行一个字符串 b
。

输出格式
输出一行一个字符串表示答案。

样例输入1
baabaac
cbaabaa
样例输出1
Yes
样例输入2
aaab
caaa
样例输出2
No
数据规模
对于所有数据,保证 1≤|a|,|b|≤105
,字符串均由小写字母构成。
*/

#include <iostream>
#include <cstring>


using namespace std;

char s[200002], t[200002];

string getmin(char s[]) {
	int n = strlen(s + 1);
	for (int l = 1; l <= n; l++)
		s[l + n] = s[l];
	int i = 1, j = 2;
	while (j <= n) {
		int k = 0;
		while (k < n && s[i + k] == s[j + k])
			++k;
		if (s[i + k] > s[j + k])
			i += k + 1;
		else
			j += k + 1;
		if (i == j)
			++j;
		if (i > j)
			swap(i, j);
	}
	string res = "";
	for (int l = i; l <= i + n - 1; l++)
		res += s[l];
	return res;
}

int main()
{
	cin >> s + 1 >> t + 1;
	if (getmin(s) == getmin(t))
		cout << "Yes" << endl;
	else
		cout << "No" << endl;

	return 0;
}

 

标签:输出,同构,int,样例,循环,403,字符串
From: https://www.cnblogs.com/itdef/p/18630892

相关文章

  • 404 最小循环覆盖2
    //404最小循环覆盖2.cpp:此文件包含"main"函数。程序执行将在此处开始并结束。///*http://oj.daimayuan.top/course/22/problem/935给你一个字符串a,你需要求出这个字符串的字典序最小的最小循环覆盖。b是a的最小循环覆盖,当且仅当a是通过b复制多次并连接后得到......
  • 静态static小问题、顺序结构、选择结构(if(单分支、双分支、多分支)、switch)、循环结构
    静态static小问题20241224packagecom.pangHuHuStudyJava.scanner;importjava.util.Scanner;publicclassDemo04{publicstaticvoidmain(String[]args){inti;floatf;Scannerscanner=newScanner(System.in);//输入整数......
  • 学期总结——插入排序(从io,循环到类,时间复杂度,循环不变式)
    以插入算法的实现为例,从一开始写下思路,到证明循环不变式,从完全在主函数中书写,到把某些步骤写成函数,再到把这一算法写成类,而后分析时间复杂度目录算法的实现思路(循环不变式)做法完全在主函数中书写(实现一)将“交换”写成函数将“排序”写成函数将几乎所有步骤都写成函数(......
  • Patroni 流程整理-主循环
    Patroni流程整理目录3.主循环主循环在Patroni类的_run_cycle函数中进行,在这个函数中调用Ha类的循环函数run_cycle,每循环一次调用一次,而不是开启Ha的循环,并且在这里进行重载配置文件。在这个主循环中重点是Ha类的_run_cycle函数,在这个函数中对集群的各种状态做出检查,并且采用......
  • GESP2级2403 小杨的日字矩阵
    题目描述小杨想要构造一个N×N的日字矩阵(N为奇数),具体来说,这个矩阵共有N行,每行N个字符,其中最左列、最右列都是|,而第一行、最后一行、以及中间一行(即第(N+1)/2 行)的第2~N-1个字符都是-,其余所有字符都是半角小写字母x。例如,一个N=5的日字矩阵如下:|---||xx......
  • gesp(三级)(9)洛谷:B3956:[GESP202403 三级] 字母求和
    gesp(三级)(9)洛谷:B3956:[GESP202403三级]字母求和题目描述小杨同学发明了一种新型密码,对于每一个小写英文字母,该小写字母代表了一个正整数,即该字母在字母顺序中的位置,例如字母a代表了正整数1......
  • gesp(三级)(10)洛谷:B3957:[GESP202403 三级] 完全平方数
    gesp(三级)(10)洛谷:B3957:[GESP202403三级]完全平方数题目描述小杨同学有一个包含nnn个非负整数的序列A......
  • 302 最小循环覆盖
    //302最小循环覆盖.cpp:此文件包含"main"函数。程序执行将在此处开始并结束。///*http://oj.daimayuan.top/course/22/problem/909给你一个字符串a,你需要求出这个字符串的最小循环覆盖的长度。b是a的最小循环覆盖,当且仅当a是通过b复制多次并连接后得到的字符......
  • 【深度学习】门控循环单元
    目录一、基本概念和原理二、基本流程三、GRU的简化设计四、应用领域五、改进方法六、技术发展趋势一、基本概念和原理        门控循环单元(GatedRecurrentUnit,GRU)是循环神经网络(RNN)的一种变体,旨在解决标准RNN中的梯度消失或爆炸问题,同时保留序列的长期信息......
  • 学霸带你游戏化玩转 C# 条件语句和循环结构
    控制结构:编程的核心逻辑控制结构是编程语言中的核心元素之一,它决定了程序的流程控制、执行顺序和决策逻辑。无论是简单的条件判断,还是复杂的循环控制,掌握好这些结构能够帮助开发者设计出高效、可靠的程序。在游戏开发中,控制结构不仅仅是编程工具,它们构建了游戏机制的骨架,决定......