CodeForces 1935A
题目链接:Entertainment in MAC
思路
当当前操作次数n为偶数时,若原字符串大于反转字符串则可以将原字符串反转n - 2次,则得到的还是原字符串,此时反转一次,并将其再次反转的字符串加到反转字符串的末尾,此时得到词典最小的字符串,源字符串小于反转字符串时,直接将原字符串反转n次得到词典最小的字符串。
当当前操作次数为奇数时,若原字符串大于反转字符串,则将字符串反转n次,得到原串的反转字符串,即为词典最小的字符串,若原字符串小于反转字符串,则反转n - 1次,再将
当前字符串反转加到当前字符串末尾得到词典最小的字符串。
代码
#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int N = 1e5 + 10;
void solve() {
ll n;
string s;
cin >> n >> s;
int l = 0, len = s.size();
while (s[l] == s[len - 1 - l] && l < len / 2) {
l++;
}
if (s[l] > s[len - l - 1]) {
if (n % 2) {
reverse(s.begin(), s.end());
}
else {
string auxious = s;
reverse(s.begin(), s.end());
s = s + auxious;
}
}
else if (s[l] < s[len - 1 - l]){
if (n % 2) {
string auxious = s;
reverse(s.begin(), s.end());
s = auxious + s;
}
}
cout << s << endl;
}
int main(){
int t;
cin >> t;
while (t--) {
solve();
}
return 0;
}
CodeForces 1935A的更多相关文章
- python爬虫学习(5) —— 扒一下codeforces题面
上一次我们拿学校的URP做了个小小的demo.... 其实我们还可以把每个学生的证件照爬下来做成一个证件照校花校草评比 另外也可以写一个物理实验自动选课... 但是出于多种原因,,还是绕开这些敏感话题 ...
- 【Codeforces 738D】Sea Battle(贪心)
http://codeforces.com/contest/738/problem/D Galya is playing one-dimensional Sea Battle on a 1 × n g ...
- 【Codeforces 738C】Road to Cinema
http://codeforces.com/contest/738/problem/C Vasya is currently at a car rental service, and he wants ...
- 【Codeforces 738A】Interview with Oleg
http://codeforces.com/contest/738/problem/A Polycarp has interviewed Oleg and has written the interv ...
- CodeForces - 662A Gambling Nim
http://codeforces.com/problemset/problem/662/A 题目大意: 给定n(n <= 500000)张卡片,每张卡片的两个面都写有数字,每个面都有0.5的概 ...
- CodeForces - 274B Zero Tree
http://codeforces.com/problemset/problem/274/B 题目大意: 给定你一颗树,每个点上有权值. 现在你每次取出这颗树的一颗子树(即点集和边集均是原图的子集的连 ...
- CodeForces - 261B Maxim and Restaurant
http://codeforces.com/problemset/problem/261/B 题目大意:给定n个数a1-an(n<=50,ai<=50),随机打乱后,记Si=a1+a2+a ...
- CodeForces - 696B Puzzles
http://codeforces.com/problemset/problem/696/B 题目大意: 这是一颗有n个点的树,你从根开始游走,每当你第一次到达一个点时,把这个点的权记为(你已经到过不 ...
- CodeForces - 148D Bag of mice
http://codeforces.com/problemset/problem/148/D 题目大意: 原来袋子里有w只白鼠和b只黑鼠 龙和王妃轮流从袋子里抓老鼠.谁先抓到白色老鼠谁就赢. 王妃每次 ...
- CodeForces - 453A Little Pony and Expected Maximum
http://codeforces.com/problemset/problem/453/A 题目大意: 给定一个m面的筛子,求掷n次后,得到的最大的点数的期望 题解 设f[i]表示掷出 <= ...
随机推荐
- [FAQ] Docker查询出所有的停止容器并移除
$ docker rm `docker container ls -a --filter "status=exited" | awk '{print $1}' | sed '1,1 ...
- [PHP] 如何让 php-fpm 的循环 echo 实时输出到浏览器
PHP 里开启实时输出方法是 ob_implicit_flush() , 但它大部分情况下都不管用, 因为 php.ini 配置里 output_buffering 输出缓冲大部分是 On 开启的 ...
- dotnet OpenXML 聊聊文本段落对齐方式
本文来和大家聊聊在 OpenXML 里面,文本段落对齐方式.在 Word 和 PPT 的文本段落对齐规则是相同的,对齐的规则比较多,本文将一一告诉大家 文本的段落对齐,需要设置给段落属性上,在 Ope ...
- dotnet core 和 .NET 5 不支持 Prefer32Bit 首选 32 位的功能
我尝试在 dotnet core 和 dotnet 5 的应用上,右击项目属性,在生成界面勾选首选 32 位的功能,然而在 x64 下没有生成 PE32+ 的应用 这是 .NET Core 以及以上版 ...
- foreach更改element内容后this到data不生效导致页面数据无变化
list.forEach(element => { element = element.split('^') console.log(element) }) 数据已经被更改,但在外部t ...
- 网站访问速度优化实战:CDN源/Nginx压缩/全站CDN加速
前言 接触到CDN的起因: 我自己搭建的网站https://price.monitor4all.cn/网页打开的速度一直比较慢,经查证是我的网站有很多静态js大文件,通过浏览器读取这些js比较耗时间. ...
- 【详细教程】手把手教你开通YouTube官方API接口(youtube data api v3)
一.背景调查 1.1 youtube介绍 众所周知,youtube是目前全球最大的视频社交平台,该平台每天产生大量的视频内容,涵盖各种主题和类型,从音乐视频到教育内容,再到娱乐节目和新闻报道等.You ...
- CSS 样式表引入的3种方式
CSS 全称为层叠样式表(Cascading Style Sheet),用来定义 HTML 文件最终显示的外观.HTML 文件里引入 CSS 样式有3种方式: 外部样式表.内部样式表.行内样式. 外部 ...
- 简易版跳板机-teleport使用
目录 1 环境搭建 2 teleport工具搭建 3 teleport使用示例 3.1 资产管理-添加主机 3.2 资产管理-添加账号 3.3 创建用户 3.4 运维授权 3.5 安装客户端助手 3. ...
- VueJS和Javascript实现文字上下滚动效果
一提到文字上下滚动,我们就会想到用不同的程序去实现,而且页面中有文字滚动会增加这个网页的互动和可信度. 1.Js最简单的方法是控制盒子的高度,使不断的重复添加 <html> <bod ...