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的更多相关文章
随机推荐
- Office EXCEL 如何保留两位小数,四舍五入
选中若干单元格,然后右击设置单元格格式,数值中保留两位小数 使用round函数四舍五入,如下图所示,我在N10单元格中输入"ROUND(M10,1)"即可,其中ROUND是函数 ...
- Java基础学习之final和多态及类型转换
finalkeyword: finalkeyword是终于的意思,能够修饰类,成员变量,成员方法. • 修饰类,类不能被继承 • 修饰变量,变量就变成了常量,仅仅能被赋值一次. • ...
- 理解static关键字
1.static 变量是类变量,通过类名引用. 2.static 方法不需要针对某个对象进行操作,其运行结果仅仅与输入的参数有关,调用时直接类名引用. 3.static 方法不能对非静态成员进行访问. ...
- Java 负载均衡
什么是负载均衡 负载均衡,英文 名称为Load Balance,指由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助.通过某种 负载分 ...
- js事件绑定/监听
事件绑定/监听的方法 1.直接绑定 顾名思义,直接在DOM元素上绑定onclick.onmouseover.onmouseout.onmousedown.onmouseup.ondblclick.on ...
- UESTC93 King's Sanctuary
King's Sanctuary Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) ...
- Lightoj 1025 - The Specials Menu
区间dp /* *********************************************** Author :guanjun Created Time :2016/6/30 23:2 ...
- iOS设备,fixed布局出问题
window.deviceId = '{{$deviceId}}'; window.iOS = navigator.userAgent.match(/(iPad|iPhone|iPod)/g) ? t ...
- 一步一步学Silverlight 2系列(5):实现简单的拖放功能
述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, ...
- 【monkey】
在Android文件系统中的存放路径是:/system/framework/monkey.jarMonkey.jar 程序是由一个名为“monkey”的Shell脚本来启动执行,shell脚本在And ...