积木游戏

题目描述

小云和小吉在玩积木游戏,他们手上有很多积木,每个积木上面都有一个字母。

现在他们把所有的积木都排在一条队列上,队列有一个完美值,这个完美值就是积木队列上的字母组成的字符串的字典序,字典序越大完美值就越大。

小云和小吉轮流玩游戏,每次游戏,玩家要把积木队列的第一个积木取出来,并把它放到积木队列的最后一个位置。

这个游戏看起来很简单,小云和小吉想知道这个游戏一直玩下去,所能得到的积木队列的最大完美值是多少?

输入输出格式

输入格式:

输入2行,第一行一个数n,表示积木数量
第二行一个长度为n的字符串,表示积木队列的初始状态

输出格式:

输出一行,最大完美值的积木队列

输入输出样例

输入样例:

11
abcdefghijk

输出样例:

kabcdefghij

提示信息

数据范围:
对于 20%的数据,n≤1000;
对于 40%的数据,n≤10^4;
对于 100%的数据,n≤3×10^5。

解法

#include <bits/stdc++.h>
using namespace std;
int n,i,j=1,k;
string s;
int main() {cin >>n >>s;while (i<n && j<n) {while (k<n && s[(i+k)%n]==s[(j+k)%n]) k++;if (k==n) break;if (s[(i+k)%n]<s[(j+k)%n])i=i+k+1;elsej=j+k+1;if (i==j) i++;k=0;}k=min(i,j);cout <<s.substr(k,n) <<s.substr(0,k);return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/629338.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MyBatis - DAO 接口(Mapper.xml)支持方法重载吗?

方法重载&#xff08;Method Overloading&#xff09;是指在同一个类中定义多个方法&#xff0c;它们具有相同的方法名但参数列表不同。 Dao 在 MyBatis 的 DAO 层接口中&#xff0c;是允许方法重载的。 在 DAO 层接口中&#xff0c;可以根据不同的需求和条件定义多个方法&am…

蓝桥杯青少年创意编程大赛:激发少儿编程潜能,培养未来科技之星

随着科技的飞速发展&#xff0c;编程已经成为了当今世界的一项重要技能。为了培养更多的编程人才&#xff0c;蓝桥杯官网显示&#xff0c;蓝桥杯青少年创意编程大赛应运而生。作为国内有影响力的少儿编程赛事之一&#xff0c;蓝桥杯青少年创意编程大赛旨在激发青少年对编程的兴…

​Portkey AI网关:一个用来连接多种人工智能模型的开源工具

简介 它允许开发者通过一个简单的API接口来访问超过100种不同的大语言模型。包括OpenAI、Anthropic、Mistral、LLama2、Anyscale、Google Gemini等。安装体积只有45kb&#xff0c;处理速度提升了9.9倍&#xff0c;可以在多个不同的AI模型中来回切换。可以根据自己的需要进行灵…

找不到mfc100.dll的解决方法,怎么修复mfc100.dll文件

当我们在使用电脑时&#xff0c;时常可能会遇到各类系统提示的错误信息。"找不到mfc100.dll" 就是这些错误之一&#xff0c;该错误提示会妨碍我们执行一些应用程序或特定代码。为了帮助读者克服这个技术障碍&#xff0c;本篇文章将详尽阐明导致该问题的根本原因&…

【Flutter 问题系列第 80 篇】TextField 输入框组件限制可输入的最大长度后,输入的内容中包含表情符号时,获取输入的内容数还是会超出限制的问题

这是【Flutter 问题系列第 80 篇】&#xff0c;如果觉得有用的话&#xff0c;欢迎关注专栏。 博文当前所用 Flutter SDK&#xff1a;3.10.5、Dart SDK&#xff1a;3.0.5 一&#xff1a;问题描述 在输入用户名称、简介等内容时&#xff0c;一般我们都会限制输入框内最大可输入…

The Feast and the Bus

JebTrains的员工正在庆祝一年中的第256天&#xff01;JebTrains有 n 名员工和 k 个团队。每个员工都是某个&#xff08;恰好是一个&#xff09;团队的成员。所有队伍的编号从 1 到 k。您将得到一个数字数组 t1、t2、…、tn&#xff0c;其中ti是第i个员工的团队编号。 JebTrains…

FFMPEG解码实时流,支持cpu、gpu解码

官网下载的ffmpeg目前只能下载到X64版本的库&#xff0c;具体编译请参考windows编译ffmpeg源码&#xff08;32位库&#xff09;_windows 32位ffmpeg动态库-CSDN博客 直接上代码 int VideoDecodeModule::Open(std::string strUrl) {AVFormatContext *pFormatCtx nullptr;AVCo…

Python 学习笔记——一认识Python

Python 简介 Python 是一种解释型、面向对象、动态数据类型的高级程序设计语言。 Python 由 Guido van Rossum 于 1989 年底发明&#xff0c;第一个公开发行版发行于 1991 年。 像 Perl 语言一样, Python 源代码同样遵循 GPL(GNU General Public License) 协议。 Python 特点 1…

电脑本地连接不见了怎么恢复?5个方法轻松解决问题!

“我在使用电脑时&#xff0c;突然发现我的本地连接不见了&#xff0c;这是怎么回事呢&#xff1f;有什么方法可以解决这个问题吗&#xff1f;” 电脑的本地连接是一种将电脑与局域网连接的方式。局域网是一种小型的网络&#xff0c;通常在建筑物内或地理位置相近的少量计算机之…

Python数据分析案例33——新闻文本主题多分类(Transformer, 组合模型) 模型保存

案例背景 对于海量的新闻&#xff0c;我们可能需要进行文本的分类。模型构建很重要&#xff0c;现在对于自然语言处理基本都是神经网络的方法了。 本次这里正好有一组质量特别高的新闻数据&#xff0c;涉及 教育 科技 社会 时政 财经 房产 家居 七大主题&#xff0c;基本涵盖…

Grafana(三)Grafana 免密登录-隐藏导航栏-主题变换

一. 免密登录 Grafana 的常用方式&#xff1a; 将配置好的Grafana图嵌入到系统页面中 为了实现可免登录访问&#xff0c;可以通过如下方式进行设置&#xff1a; 1. 修改Grafana配置文件 在Grafana的配置文件 /etc/grafana/grafana.ini 中&#xff0c;找到 [auth.anonymous] 配…

深度剖析 ThreadLocal 内存泄露问题及解决方案

引言 在多线程编程中&#xff0c;ThreadLocal 是一个常用的工具&#xff0c;用于在每个线程中维护独立的变量&#xff0c;避免了线程间的数据共享问题。然而&#xff0c;使用不当时&#xff0c;ThreadLocal 可能引发内存泄露&#xff0c;这是一个开发者们常常需要面对的难题。…

SaaS 与 AWS 云:协同创新的崭新时代

在云计算的潮流下&#xff0c;SaaS&#xff08;Software as a Service&#xff09;模型和AWS&#xff08;Amazon Web Services&#xff09;云平台的结合为企业带来了前所未有的灵活性、可扩展性和效率。这两者的协同作用开启了一场数字化时代的创新浪潮&#xff0c;重新定义着企…

记一次Log记录大对象导致的CPU异常和磁盘打满

代码里有个大对象Map&#xff0c;缓存了100M数据&#xff0c;在多线程任务中记录异常的任务时错误地记录了这个Map&#xff0c;导致JSON序列化时疯狂刷磁盘写入数据&#xff0c;导致磁盘被打满&#xff0c;CPU100%&#xff0c;机器拒绝访问。

P9842 [ICPC2021 Nanjing R] Klee in Solitary Confinement 题解(SPJ!!!)

[ICPC2021 Nanjing R] Klee in Solitary Confinement 题面翻译 给定 n , k n,k n,k 和一个长为 n n n 的序列&#xff0c;你可以选择对区间 [ l , r ] [l, r] [l,r] 的数整体加上 k k k&#xff0c;也可以不加。最大化众数出现次数并输出。 题目描述 Since the travele…

MySQL命令大全和实例

文章目录 1. 数据库管理2. 表操作3. 数据操作&#xff08;CRUD&#xff09;4. 条件查询与排序5. 聚合函数和分组6. 用户权限管理7. 其他操作8. 视图操作9. 索引操作10. 子查询与连接查询11. 插入多行数据12. 删除满足特定条件的表中所有数据13. 清空表&#xff08;保留表结构&a…

rust跟我学五:是否安装双系统

图为RUST吉祥物 大家好,我是get_local_info作者带剑书生,这里用一篇文章讲解get_local_info是怎么得到检测双系统的。 首先,先要了解get_local_info是什么? get_local_info是一个获取linux系统信息的rust三方库,并提供一些常用功能,目前版本0.2.4。详细介绍地址:[我的Ru…

IOS-高德地图路径绘制显示交通状况-Swift

本文基于&#xff1a;高德地图路径绘制进行了路径绘制的优化&#xff0c;添加了根据交通信息&#xff08;是否拥堵&#xff09;来显示路况&#xff0c;效果如图&#xff1a; 图标资源&#xff1a; custtexture_bad custtexture_green custtexture_slow custtexture_serio…

关于C语言整型提升的讲解

目录 1.什么是整型提升 2.整型提升的意义 3.整型提升是怎么提升的 4.整型提升的实例 1.什么是整型提升 C语言中的整型算术运算总是以缺省&#xff08;默认&#xff09;整型类型的精度来进行的。为了获得这个精度&#xff0c;表达式中的字符和短整型操作数在使用之前会被转换…