这道题并没有想到一些比较好的办法 思路挺简单的 就是简单的一个模拟:在每个可以插入的地方分别插入A,B,C,然后再模拟字符消除,得到一个分数,再取max。并不会超时。
要注意一下字符串处理的细节 这个不熟悉字符串的话挺容易发生一些奇奇怪怪的小错误的。我就调了好久QAQ.

另外用了个string里面的insert a.insert(pos,s) 表示在a[pos]前【pos似乎是个迭代器什么的 也没怎么搞懂原理 但是就是这么用】插入字符串s

#include<cstdio>
#include<vector>
#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
#define MAXN 100
string a;
int Del(string s)
{string temp="";//删掉之后的字符串int len=s.length();if(len==0) return 0;for(int i=0;i<len;i++){if(s[i]==s[i+1])while(s[i]==s[i+1]&&i<len)//如果相同指针后移,不作处理i++;else temp+=s[i];//不同则不能删去,记录下来}if(temp.length()==len) return 0;return len-temp.length()+Del(temp);
}
int main()
{int T;scanf("%d",&T);while(T--){cin>>a;int ans=-1;int N=a.length();for(int i=0;i<N;i++){string t=a;t.insert(i,"A");ans=max(ans,Del(t));if(ans==N+1)break;t=a;t.insert(i,"B");ans=max(ans,Del(t));if(ans==N+1)break;t=a;t.insert(i,"C");ans=max(ans,Del(t));if(ans==N+1)break;}printf("%d\n",ans);}
}

hihoCoder1039字符消除【字符串处理】相关推荐

  1. hihoCoder 1039:字符消除(字符串处理)

    #1039 : 字符消除 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi最近在玩一个字符消除游戏.给定一个只包含大写字母"ABC"的字符串s,消 ...

  2. hihoCoder--1039:字符消除

    描述 小Hi最近在玩一个字符消除游戏.给定一个只包含大写字母"ABC"的字符串s,消除过程是如下进行的: 1)如果s包含长度超过1的由相同字母组成的子串,那么这些子串会被同时消除, ...

  3. oracle 字符去除空格,oracle消除字符串空格 | 学步园

    trim函数和replace函数可以解决这个问题. replace(str,' ','')就可以消除字符串中所有空格. trim函数 如果提到TRIM函数,最简单的功能就是使用它来去除字符串的行首和行 ...

  4. 写一个rtrim()函数消除字符串后面的空格字符。编main函数调用测试它。

    写一个rtrim()函数消除字符串后面的空格字符.编main函数调用测试它. **提示信息:"请输入一个字符串:" **输出格式要求:"去掉右边的空格后为%s!\n&qu ...

  5. 1039 字符消除 java_Hihocoder 1039 字符消除

    描述 小Hi最近在玩一个字符消除游戏.给定一个只包含大写字母"ABC"的字符串s,消除过程是如下进行的: 1)如果s包含长度超过1的由相同字母组成的子串,那么这些子串会被同时消除, ...

  6. 正则的实例用法,删除包含某些字符的字符串

    a=re.findall('[a-z]system[a-z]', ': Control_7_ CodeSystem: GroupCodeSystem: IdSystem:'.lower()) re.s ...

  7. MySQL 学习笔记(12)— 数据类型(定长字符、变长字符、字符串大对象、数字类型、日期时间类型、二进制类型)

    MySQL 常见的数据类型有字符串类型.数字类型.时间类型.二进制类型.具体的分类如下图: 1. 字符串类型 字符串类型用于存储字符和字符串数据,主要包含三种具体的类型:定长字符串.变长字符串以及字符 ...

  8. java.sql.Exception:setString 只能处理少于 32766 个字符的字符串

    java.sql.Exception:setString 只能处理少于 32766 个字符的字符串 解决方式是 : 升级ojdbc的版本,   将原来的 ojdbc14_10.2.0.2.0.jar ...

  9. 《C#精彩实例教程》小组阅读07 -- C#字符与字符串

    本微信图文详细介绍了C#中的字符与字符串.

  10. pandas使用pad函数向dataframe特定数据列的每个字符串添加补齐字符或者字符串、向所有字符串的左右两侧填充、直到宽度达到指定要求(both padding)

    pandas使用pad函数向dataframe特定数据列的每个字符串添加补齐字符或者字符串.向所有字符串的左右两侧填充.直到宽度达到指定要求(both padding) 目录

最新文章

  1. 图像滤波常用算法实现及原理解析
  2. numpy np.sort()函数(指定对某一轴进行排序,返回数组的排序副本)(成对数组不要用这个排,用哪个啥lexsort()或argsort()都行)
  3. hadoop 2.4.1 集群安装二
  4. linux安装lrzsz,并使用rz sz 命令
  5. Spring Data JPA 从入门到精通~Criteria概念的简单介绍
  6. python 获取文件列表_Python3 - 获取文件夹中的文件列表
  7. 31. Next Permutation
  8. linux内核C -- 第10课:内联函数探究
  9. 人件管理与中国古代史:程序员豫让
  10. java中的Date和时区
  11. 基于CList链表类的故障树分析算法的实现
  12. 程序员希望收到什么礼物
  13. 实时系统vxWorks - 动态库、静态库建立及调用
  14. C++游戏编程--模拟键盘打字程序
  15. 乘风破浪的码农——仿佛身体被掏空
  16. PMP思维导图—项目经理的角色
  17. Oracle rtrim、to_char函数格式化数字 小数Format展示,FM999990D99
  18. 咸鱼Micropython— machine库
  19. html锚机链接的使用+代码
  20. kankan转载:anddroid卡牌效果实现

热门文章

  1. 《预训练周刊》第28期:M6-10T:高效多万亿参数预训练的共享去链接范式、大模型自然语言处理的最新进展综述
  2. 并发编程基础 - MESA管程模型和synchronized原子性
  3. 黑马程序员_集合框架基本概念
  4. npm包从创建到发布及下载使用
  5. OC底层知识点之-多线程(二)GCD上篇
  6. 推荐适合女神节的SVG模版
  7. $echarts lineStyle color 颜色不起作用
  8. 【java官网jdk8-jdk18各版本下载Oracel】
  9. c语言ab赋值互换fun,C语言程序设计A问卷.doc
  10. 如何将敏捷开发与V模型深度融合?这家企业给出答案