codeforces 798B - Mike and strings

CodeForces - 798B:Mike and strings CodeForces - 798B:Mike and strings 来源: 标签: 参考资料: 相似题目: 题目 Mike has n strings s1, s2, …, sn each consisting of lowercase English letters. In one move he can choose a string si,... 阅读详情

感觉自己好咸鱼呀……B题写了这么久,虽然可以算作1A(忽略一次少include一个头文件的CE)……

思想很简单,每次选定一个字符串作为目标字符串,然后把其他所有字符串都当做测试字符串,计算出总共需要的步数,再在这些计算出的步数中找到最小的那个就是答案。

#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;
char str[53][105];
int n;
bool is_equal(char sta[],char tes[],int len)//判断两个字符串是否相等 
{
	for(int i=0;i<len;i++)
	{
		if(sta[i]!=tes[i]) return false;
	}
	return true;
}
int step(int sta,int tes)//计算从tes测试字符串到sta目标字符串需要多少步 
{
	int cnt=0;
	int len=strlen(str[sta]);
	char test[2*len+1];//新建一个test字符串 
	for(int i=0;i<len;i++) test[i]=str[tes][i];
	for(int i=0;i<len;i++) test[len+i]=str[tes][i];
	test[2*len]='\0';
	//以上三行是做如此的工作:源字符串:“abc”,test字符串:“abcabc”,这样可以方便后续计算步数 
	while(cnt<len)//计算出从tes测试字符串到sta目标字符串需要cnt步
	{
		if(is_equal(str[sta],test+cnt,len)) break;
		else cnt++;
	}
	if(cnt>=len) return -1;//如果跑完一圈依然没有能够找到某次和目标字符串相同,那么就代表ans=-1; 
	return cnt;
}
int main()
{
	scanf("%d",&n);
	for(int i=1;i<=n;i++) scanf("%s",str[i]);
	int ans=1000000000,flag=1;
	for(int i=1;i<=n;i++)//枚举目标字符串 
	{
		int cnt=0;
		for(int j=1;j<=n;j++)//枚举测试字符串 
		{
			if(i!=j)
			{
				int tmp=step(i,j);
				if(tmp==-1){
					printf("-1\n");
					return 0;
				}
				else cnt+=tmp;
			}
		}
		if(cnt<ans) ans=cnt; 
	} 
	printf("%d\n",ans);
}


Fluent UDF实战:除了速度入口,你的DEFINE_PROFILE宏还能搞定这些边界条件(温度、组分、壁面接触角全解析) 本文深入解析Fluent UDF中DEFINE_PROFILE宏在复杂边界条件中的高阶应用,涵盖温度场、组分浓度和壁面接触角等关键场景。通过实战代码示例,展示如何实现空间梯度温度场、动态组分控制和接触角动态调整,助力CFD工程师突破标准界面限制,提升仿真精度和效率。 阅读详情

相关推荐

Flowable第一篇、快速上手(Flowable安装、配置、集成)

Flowable是一个轻量级、高效可扩展的工作流和业务流程管理(BPM)引擎,支持在Java应用程序中实现复杂的工作流自动化。Flowable最初是作为Activiti项目的一个分支发展而来的,但它现在已经成为一个独立的开源项目,并在企业级应用中得到了广泛使用

Du_XiaoNan的博客 1万+

Mike and strings(思维)

题目链接: Mike and strings 大致题意: 对于某个字符串,可以将前面字符删除添加到末尾 问最少几步可以将这 n 个字符串都变成相同的,如果不行输出-1. 解题思路: 核心就是找n个字符最长的公共部分 这里用到string.find,如果找到会返回下标,没有找到,会返回npos AC代码: #include <bits/stdc++.h> using namespace std; typedef long long ll; string s[100]; int main()

qq_49494204的博客 312

Meta-RL之Meta-Gradient Reinforcement Learning

这篇文章是用元学习算法去学习RL的超参数η={γ,λ}\eta=\{\gamma,\lambda\}η={γ,λ}。当然不仅限于这2个超参数,还可以是和回报相关的超参数。 本文的核心思想:我们之前接触过Meta-Learning参数的初始化(MAML、Reptile)以及Meta-Learning参数的更新优化(L2L-by-gd-by-gd、Opt as a model for few-shot learning),那么这篇就是能否Meta-Learning到η={γ,λ}\eta=\{\gamma,\l

Ton的博客 2520

【CodeFores 798B】 Mike and strings(模拟+string)

 B. Mike and strings time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Mike has n strings s1, s2, ..., sn each

FSMM_blog 681

PID不够用?试试用ADRC改造你的ArduCopter:从Simulink仿真到SITL测试全记录

本文详细介绍了如何将ADRC(自抗扰控制)算法集成到ArduPilot飞控中,以替代传统PID控制器。通过Simulink建模、参数整定和SITL仿真测试,展示了ADRC在抗扰动能力、响应速度和参数调节复杂度上的优势,特别适合无人机在强风扰动下的稳定控制。

weixin_32349093的博客 273

基于matlab的轴承损伤分析动力学建模仿真

高质量的轴承在正确的使用下,可以使用很长一段时间,如果过早的出现损伤,很可能是因为选型错误,使用不当或润滑不良造成的。因此,在安装轴承时,我们需要记录机器种类,安装部位,使用条件及周围配合。通过研究总结轴承损伤的类型,发生问题时的使用环境,以避免类似情况再次发生。轴承损伤方式按下述图片分类,我们可以图片中显示的主要特征来判断轴承损伤形式。01、压痕碰伤卡入固体异物或冲击造成的表面凹坑及安装是的擦伤◆固体异物侵入◆在倾斜状态下安装◆安装不良造成的撞击,脱落◆卡入剥离片◆改善安装、使用方法。

平时工作较为繁忙,私信消息一般晚上回复,谢谢大家~~ 2667

CodeForces - 798B Mike and strings (暴力+stl)

题目链接:http://codeforces.com/problemset/problem/798/B点击打开链接 B. Mike and strings time limit per test 2 seconds memory limit per test 256 megabytes input standard input

xuejye的博客 2415

Kylin操作系统下OpenLDAP安装

Kylin操作系统下OpenLDAP安装

跟着大数据和AI去旅行 1612

codeforces B. Mike and strings 暴力+字符串

题意:给定n个字符串,可以进行一个这样的操作,将第一个字符移动到最后一个字符的后面,可以形成一个新的字符串,如:name进行一次操作,得到amen。求出最小移动次数,使得n个串相等,如果做不到,输出-1,否则输出次数。 思路:每次选定一个串为目标串,其他的串为测试串,将测试串移动,使得所有串相等,求得最小。如果移动了长度个单位,说明不管进行多少次移动,都无法是的所有串相等,这时是-1 #inc

chen_minghui的博客 597

【YOLOv8科研级优化】基于YOLOv9的GELAN模块重构C2f结构,实现精度与效率的同步提升

打开确保模型解析器能识别GELANBlock模块。通过将YOLOv9的GELAN模块集成到YOLOv8的C2f模块中,我们实现了一个“强特征表达+高效计算”的目标检测模型。这个改进不仅在工程上能提升复杂场景下的检测效果,更在科研上提供了“多分支特征融合”的创新思路——这种思路可以延伸到其他检测网络(如Faster R-CNN、SSD)的改进中,帮你在论文中打造独特的研究点。

know_F0727的博客 203

嵌入式PCB电源完整性分析:PDN建模与电流密度优化

电源完整性(PI)是高速数字与混合信号系统稳定运行的基础,其核心在于保障芯片供电网络(PDN)在动态负载下的电压稳定与热安全。PDN分析本质上是通过量化电流密度与电压降两个关键物理量,揭示PCB走线、过孔及平面的载流瓶颈与压降路径。电流密度超标将引发局部温升与可靠性风险,而电压降则直接侵蚀器件供电裕量,导致复位、采样失真等典型故障。借助Altium Designer等工具开展工程级PDN建模,需严格依据电源预算表定义源/负载,并精准配置铜厚、过孔参数及IPC-2152限值,从而实现从原理图到制造工艺的闭环验

weixin_28949937的博客 211

Mike and strings

Mike and strings string:npos是个特殊值,说明查找没有匹配 str.find(a)==string::npos; 意思是,查找字符串str中是否含有字串a str.find(a)返回的是字符串的第一个字符的下标 #include<bits/stdc++.h> using namespace std; typedef long long ll; string a[100]; int main() { int n; cin>>n; for

m0_45920074的博客 189

财务数字化——解读美的战略规划之财务组织体系建设【附全文阅读】

本文提出适用于集团企业的财务管控方案,面向财务负责人、HR及战略规划人员。方案整合四种管控模式,结合500强案例,构建"职能定位-架构设计-权责划分-人才发展"体系,涵盖财务五大模块。通过明确总部与事业部权责边界,提供组织架构等实操框架,旨在平衡财务管控与业务支持,提升效率与风控能力,满足集团财务体系规范化建设需求。

cdfunlove的博客 663

Codeforces798B Mike and strings

哈希大法好

ACoder 667

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

SSL/TLS证书配置实战:从链完整性到Nginx/Apache安全优化

SSL/TLS协议通过非对称加密和证书信任链机制,为网络通信提供端到端的安全保障。其核心原理涉及密钥交换、数字证书验证和会话管理,确保数据在传输过程中的机密性与完整性。在工程实践中,正确的证书链配置——特别是避免中间证书缺失——是保障跨平台兼容性的关键,如移动端WebView的严格验证场景。结合Nginx与Apache的实战配置,通过优化协议版本、密码套件和OCSP Stapling等特性,不仅能提升HTTPS站点的安全性,还能显著改善高并发下的性能表现。本文以证书链完整性为切入点,深入解析SSL/TLS在

442

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

CodeForces - 798B Mike and strings

B. Mike and strings time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard output Mike has n strings s1, s2, …, sn each consisting of lowercase English letters. In one move he can choose a string si, erase the fi

海岛Blog 478

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Codeforces798B-Mike and strings

B. Mike and stringstime limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard output Mike has n strings s1, s2, …, sn each consisting of lowercase English le

algzjh的博客 1166

CodeForces - 798B Mike and strings

Mike and strings Mike has n strings s1, s2, …, sn each consisting of lowercase English letters. In one move he can choose a string si, erase the first character and append it to the end of the string. For example, if he has the string “coolmike”, in one mo

weixin_51996479的博客 305

CodeForces 798B Mike and strings

题目链接:http://codeforces.com/contest/798/problem/B 题意:给你n个字符串,有一种操作叫做左移,左移一次就把第一个字符加到这个字符串的末尾,问你最少的操作数使得,这个n个字符串都相等,若不存在这种操作就输出-1 解析:由于n和字符串的长度都不大,那么直接暴力搞就好,枚举最终的字符串的答案,然后逐个匹配,然后更新ans记录最小值即可#include <b

22h's Blog 971

小白题解 Codeforces 798B Mike and strings

Codeforces 798B Mike and strings 题解 (模拟题,暴力求解) 题目链接:点击打开链接 题目大意:给出一组长度相同的字符串,每次操作可以将一个字符串的首元素放到末尾,要使各字符串完全一致,需要多少次操作。 分析:以第一个字符串顺序为依照,依次枚举最终字符串以s[0][i]开头的情况,对每种情况去分别计算每个字符串需要的操作数并求和,最终再找到cnt[i]最小值即为答案。复杂度是n^4,可过。 下面是AC代码(用来好长时间debug)

Talk is cheap,give me the code! 697

CodeForces - 798B Mike and strings 【思维】

Description(下方有汉语题意) Mike hasnstringss1, s2, ..., sneach consisting of lowercase English letters. In one move he can choose a stringsi, erase the first character and append it to the end of the ...

MengHao的博客 633

Codeforces 798B Mike and strings

题意:           给出 N 个串,问最少能移动几次使 N 个串都相等。           移动的规则是,每次只能将一个串首的字符移到串尾。           N 最大 50,串长最大 50。 思路:           竟然是暴力题。 50^4 并不超时…… 代码: #include #include #include #include #include us

DT2131 831

【CodeForces】【暴力】798 B Mike and strings

【题目】http://codeforces.com/problemset/problem/798/B 【题意】给出n个字符串,长度相同,有1种操作:将第一个字符放到最后,问最少需要操作多少次能使得这n个字符串变得相同? 【思路】    -&gt;遍历每个串,让第i个字符串当作目标串,看剩下的串变成这个串需要多少总代价                              -&gt;将其他的...

swqeaaa的博客 375

Mike and strings CodeForces - 798B

Mike and strings CodeForces - 798B 菜的扣脚,哭唧唧哭叽叽可能是没怎么写过kmp的题??????自以为正确的思路和大佬说了一遍漏洞百出。最后还是扩大两倍,直接一个一个找最先出现的位置。然后加上去,一次没找到就输出-1(因为肯定找不到了)。 #include&lt;cstdio&gt; #include&lt;cstring&gt; #include&lt;i...

DeathYmz的博客 475

codeforces 798B Mike and strings

能暴力的水题就不要想别的了 #include #include #include #include using namespace std; const int N=55; string s[N],tmp[N][N]; int n,len; void gettmp(int t) { tmp[t][0]=s[t]; for(int i=1;i<len;++i) { tmp[t][i]=

359

【codeforces 798B】Mike and strings

【题目链接】:http://codeforces.com/contest/798/problem/B 【题意】 给你n个字符串; 每次操作,你可以把字符串的每个元素整体左移(最左边那个字符跑到最后面去了) 问你最少经过多少次操作可以使得所有字符串都相同; 【题解】 枚举最后每个字符串都变成了哪一个字符串; 然后每个字符串都模拟一下左移的过程;直...

AWCXV 175
上一篇: hihocoder 1284 - 机会渺茫
下一篇: HDU 6008 - Worried School
Freenm
博客等级 码龄15年 14粉丝 67原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值