#include<bits/stdc++.h>
using namespace std;
string s,a,b;
int main(){
cin>>s;
int n=s.size();
int l=0,r=n-1;
while(l<=r-3){//三个字母没有连续相同的,所以四个字符以内必定有相同字母,即回文
if(s[l]==s[r]){
a.push_back(s[l]);
b.push_back(s[r]);
l++,r--;
}
else if(s[l]==s[r-1]){
a.push_back(s[l]);
b.push_back(s[r-1]);
l++,r-=2;
}
else if(s[l+1]==s[r]){
a.push_back(s[l+1]);
b.push_back(s[r]);
l+=2,r--;
}
else if(s[l+1]==s[r-1]){
a.push_back(s[l+1]);
b.push_back(s[r-1]);
l+=2,r-=2;
}
}
if(r>=l)
a.push_back(s[l]);//中间还剩余一个字母,加上它使得串更长,当输入的串很小时,加上中间一个可以使得超过一半
reverse(b.rbegin(),b.rend());//反向迭代器的++是向前的,等同于reverse(b.begin(),b.end());
cout<<a<<b;
return 0;
}

Codeforces Global Round 4E(字符串,思维)的更多相关文章

  1. Codeforces Global Round 11 个人题解(B题)

    Codeforces Global Round 11 1427A. Avoiding Zero 题目链接:click here 待补 1427B. Chess Cheater 题目链接:click h ...

  2. CodeForces Global Round 1

    CodeForces Global Round 1 CF新的比赛呢(虽然没啥区别)!这种报名的人多的比赛涨分是真的快.... 所以就写下题解吧. A. Parity 太简单了,随便模拟一下就完了. B ...

  3. Codeforces Global Round 1 - D. Jongmah(动态规划)

    Problem   Codeforces Global Round 1 - D. Jongmah Time Limit: 3000 mSec Problem Description Input Out ...

  4. Codeforces Global Round 2 题解

    Codeforces Global Round 2 题目链接:https://codeforces.com/contest/1119 A. Ilya and a Colorful Walk 题意: 给 ...

  5. Codeforces Global Round 1 (A-E题解)

    Codeforces Global Round 1 题目链接:https://codeforces.com/contest/1110 A. Parity 题意: 给出{ak},b,k,判断a1*b^( ...

  6. Codeforces Global Round 3

    Codeforces Global Round 3 A. Another One Bites The Dust 有若干个a,有若干个b,有若干个ab.你现在要把这些串拼成一个串,使得任意两个相邻的位置 ...

  7. Codeforces Global Round 1 (CF1110) (未完结,只有 A-F)

    Codeforces Global Round 1 (CF1110) 继续补题.因为看见同学打了这场,而且涨分还不错,所以觉得这套题目可能会比较有意思. 因为下午要开学了,所以恐怕暂时不能把这套题目补 ...

  8. 【手抖康复训练1 】Codeforces Global Round 6

    [手抖康复训练1 ]Codeforces Global Round 6 总结:不想复习随意打的一场,比赛开始就是熟悉的N分钟进不去时间,2333,太久没写题的后果就是:A 题手抖过不了样例 B题秒出思 ...

  9. Codeforces Global Round 7 D2. Prefix-Suffix Palindrome (Hard version)(Manacher算法+输出回文字符串)

    This is the hard version of the problem. The difference is the constraint on the sum of lengths of s ...

随机推荐

  1. 如何用 Python 实现超级玛丽的人物行走和碰撞检测?

    ​ 功能介绍 人物行走 人物的行走速度这边分成水平方向(X轴)和竖直方向(Y轴),水平方向的速度要考虑加速度和摩擦力,竖直方向的速度要考虑重力加速度. 水平方向:设定X轴向右走的速度为大于0,向左走的 ...

  2. 01-书城http状态405-此url不支持http方法get

    错误: http状态405-此url不支持http方法get 原因:

  3. SQL常用语句和函数

    从一个表中选取数据插入到另一个表中: select column_name(s) into new_table_name from old_table_name --new_table_name表不必 ...

  4. Yii2.0如何建立公共方法

    yii2-advanced版本 common 目录为公共资源目录,我们可以把定义的方法放在这个目录下,在此目录下我们随意建立一个文件比如”helps”目录,因为考虑到公共方法可能会有功能上的划分类,所 ...

  5. 安装多个xcode对homebrew影响

    安装多个xcode,可能会导致无法识别默认使用哪个xcode的情况,这时候执行下列语句,设置默认xcode sudo xcode-select --switch /Applications/Xcode ...

  6. Mysql架构、复制类型、复制功能介绍

    1.1 常见的几种主从架构 一主一从 一主多从 多主一从 双主互备 1.2 主从复制功能 1)实时灾备 2)读写分离 3)高可用 4)从库数据统计 5)从库数据备份 6)平滑升级 1.3 三种复制方式 ...

  7. Hadoop学习笔记(三):分布式文件系统的写和读流程

    写流程:怎么将文件切割成块,上传到服务器 读流程:怎么从不同的服务器来读取数据块 写流程 图一 图二 写的过程中:NameNode会给块分配存储块的位置,每次想要存储文件的时候都会在NameNode创 ...

  8. Dapr Pub/Sub 集成 RabbitMQ 、Golang、Java、DotNet Core

    前置条件: <Dapr运用> <Dapr 运用之 Java gRPC 调用篇> <Dapr 运用之集成 Asp.Net Core Grpc 调用篇> 搭建 Rabb ...

  9. Java常用API——Arrays工具类

    介绍:Arrays工具类提供了一些可以直接操作数组的方法,以下是一些常用方法: int binarySearch(type[] a, type key):要求数组a元素升序排列,使用二分法搜索key的 ...

  10. 简单的单元测试unittest实例

    unittest是Python中自带的一个单元测试模块,常常用它来做单元测试,它里面封装了用例的初始化操作和执行,以及返回结果的校验等操作. 在学习unittest框架之前需要先了解几个知识点: Te ...