ACM_Encoding
Encoding
Time Limit: 2000/1000ms (Java/Others)
Problem Description:
给定一个只包含'A' - 'Z'的字符串,我们可以使用以下方法对其进行编码:
1.每个包含k个相同字符的子字符串应编码为“kX”,其中“X”是该子字符串中唯一的字符。
2.如果子串的长度为1,则应忽略“1”。
Input:
第一行包含一个整数N(1 <= N <= 100),表示测试用例的数量。 接下来的N行包含N个字符串。 每个字符串只包含'A' - 'Z',长度小于10000。
Output:
对于每个测试用例,输出一行中的编码字符串。
Sample Input:
2
ABC
ABBCCC
Sample Output:
ABC
A2B3C
解题思路:字符串处理,统计一个字符串中相同字母的个数,有相同字母的,数字在前,字母在后,这里边计算边输出,比较方便。
AC代码:
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n,len,num;
char a[];
cin>>n;
while(n--){
cin>>a;
len=strlen(a);
for(int i=;i<len;i++){
num=;//标记当前字符起始个数为1
for(int j=i+;j<len;++j){
if(a[i]==a[j])num++;
else break;
}//边计算边输出
if(num>){cout<<num<<a[i];i+=num-;}
else cout<<a[i];
}
cout<<endl;
}
return ;
}
ACM_Encoding的更多相关文章
随机推荐
- O2O助汪峰成功逆袭,汪峰最终上头条了
8月2日七夕情人节,汪峰<峰暴来临>演唱会在鸟巢10万人体育场唱响,各大报纸.站点娱乐板块并没有等来汪峰向国际章求婚的"头条",只是,与乐视合作现场演出+付费直播的O2 ...
- Android +NDK+eclipse+opengl ES2.0 开启深度測试
參考:https://www.opengl.org/discussion_boards/showthread.php/172736-OpenGL-ES-Depth-Buffer-Problem 环境: ...
- UTF-8 GBK UTF8 GB2312之间的区别和关系
UTF-8 GBK UTF8 GB2312之间的区别和关系 UTF-8:Unicode TransformationFormat-8bit,允许含BOM,但通常不含BOM.是用以解决国际上字符 ...
- Pierce振荡器设计
一.Pierce振荡器电路 Inv:内部反相器,作用等同于放大器: Q:石英晶体或陶瓷晶振: RF:内部反馈电阻(使反相器工作在线性区): RExt:外部限流电阻(防止石英晶体被过分驱动): CL1. ...
- EJB学习笔记六(EJB中的拦截器)
1.前言 听到拦截器,预计都不陌生,尤其是在Servlet规范中,充分应用了拦截器的概念.EJB3也提供了拦截器的支持,本质上是轻量级的AOP实现.拦截器能够将多个业务方法中的通用逻辑从业务方法中抽 ...
- Java基础学习之final和多态及类型转换
finalkeyword: finalkeyword是终于的意思,能够修饰类,成员变量,成员方法. • 修饰类,类不能被继承 • 修饰变量,变量就变成了常量,仅仅能被赋值一次. • ...
- eclispe pydev tab改回 空格找到方法了,这个链接:http://stackoverflow.com/questions/23570925/eclipse-indents-new-line-with-tabs-instead-of-spaces
看这个链接: 3down votefavorite 1 I've followed all the suggestions here. When I press return, I get a new ...
- YTU 2980: 几点了
2980: 几点了 时间限制: 1 Sec 内存限制: 128 MB 提交: 37 解决: 9 题目描述 现有一个Time类可以用来记录时间,请输出Time记录的时间加上s秒后的时间. 只需提交补 ...
- 【SCOI 2005】 最大子矩阵
[题目链接] 点击打开链接 [算法] 动态规划 我们发现,M只有两种取值,1和2,那么,只需分类讨论即可 当M = 1时,其实这个问题就成了就最大连续子段和的问题,只不过要选K段而已 用f[i][j] ...
- 【转】js中15个常用的正则表达式+正则集合
1 用户名正则 //用户名正则,4到16位(字母,数字,下划线,减号) var uPattern = /^[a-zA-Z0-9_-]{4,16}$/; //输出 true console.log(uP ...