Encoding

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)



http://acm.hdu.edu.cn/showproblem.php?pid=1020

Problem Description
Given a string containing only 'A' - 'Z', we could encode it using the following method: 



1. Each sub-string containing k same characters should be encoded to "kX" where "X" is the only character in this sub-string.



2. If the length of the sub-string is 1, '1' should be ignored.
 
Input
The first line contains an integer N (1 <= N <= 100) which indicates the number of test cases. The next N lines contain N strings. Each string consists of only 'A' - 'Z' and the length is less than 10000.
 
Output
For each test case, output the encoded string in a line.
 
Sample Input
2
ABC
ABBCCC
 
Sample Output
ABC
A2B3C

这个题真心不难,只不过题意没标明相同字母连续的时候输出个数,还是直接输出字符串中所有相同的个数。

①如果是先输出整个字符串中相同字母的个数再输出字母,这样要复杂一点,当然了,该字母只有唯一一个则直接输出。②如果是先输出连续相同的字母的个数再输出字母这样其实更简单。

看第一种情况代码(WA):

#include<bits/stdc++.h>
using namespace std;
const int N=10000+10;
char a[N];
int b[100];
int main()
{
int t,x,i;
scanf("%d",&t);
getchar();
while(t--)
{
scanf("%s",a);
x=strlen(a);
memset(b,0,sizeof(b));
for(i=0;i<x;i++)
b[a[i]-'0']++;//将此类字母个数统计出来;
for(i=0;i<x;i++)
{
if(b[a[i]-'0']!=1&&b[a[i]-'0']!=0)
{
printf("%d",b[a[i]-'0']);
printf("%c",a[i]);
b[a[i]-'0']=0;
}
if(b[a[i]-'0']!=0)//如果已经输出过就不用再输出此类字母了;
printf("%c",a[i]);
}
printf("\n");
}
return 0;
}

来看第二种代码(AC):

#include<bits/stdc++.h>
using namespace std;
const int N=10000+10;
char a[N];
int main()
{
int t,x,i,k;
scanf("%d",&t);
getchar();
while(t--)
{
scanf("%s",a);
x=strlen(a);
k=1;
for(i=1; i<=x; i++)
{
if(a[i]==a[i-1])
k++;//统计出连续相同的字母个数直接输出;
else
{
if(k!=1)//该种字母个数为一就不用将个数输出;
printf("%d",k);
printf("%c",a[i-1]);
k=1;
}
}
printf("\n");
}
return 0;
}

HDU-1020-Encoding,题意不清,其实很水~~的更多相关文章

  1. HDU 1020 Encoding 模拟

    Encoding Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

  2. hdu 3295 模拟过程。数据很水

    An interesting mobile game Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Ja ...

  3. HDU 1020 Encoding POJ 3438 Look and Say

    Encoding Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

  4. HDU 1020 Encoding【连续的计数器重置】

    Encoding Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

  5. hdu 1020 Encoding

    Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Description Given a ...

  6. HDU 1020:Encoding

    pid=1020">Encoding Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Ja ...

  7. FZU 2205 据说题目很水

    2205 据说题目很水 Accept: 199    Submit: 458Time Limit: 1000 mSec    Memory Limit : 32768 KB Problem Descr ...

  8. HDU 5832 A water problem(某水题)

    p.MsoNormal { margin: 0pt; margin-bottom: .0001pt; text-align: justify; font-family: Calibri; font-s ...

  9. 【jQuery基础学习】09 jQuery与前端(这章很水)

    这章主要是将如何将jQuery应用到网站中,或者说其实就是一些前端知识,对于我这种后端程序来说其实还是蛮有用的. 关于网站结构 文件结构 前端文件分三个文件夹放 images文件夹用来存放将要用到的图 ...

  10. 『NYIST』第八届河南省ACM竞赛训练赛[正式赛一]-CodeForces 236A,虽然很水,但有一个很简单的函数用起来方便

    A. Boy or Girl time limit per test 1 second memory limit per test 256 megabytes input standard input ...

随机推荐

  1. selenium2+python自动化2-元素定位

    嘻嘻,书接上回,接着唠,这里先补充一下自动化要掌握的四个步骤吧:获取元素.操作元素.获取返回值.断言(返回结果与期望结果是否一致),最后就是自动化测试报告的生成.这一片主要讲一下如何进行元素定位.元素 ...

  2. 让搜狗输入法更符合编程/vim使用的配置

    1. “菜单”—“设置属性”—“常用”—“初始状态”里的“中/英文”选项,选中“英文” 2. 设置属性里的“高级”里的“高级模式”,点“英文输入法设置”,“启动时启用英文输入法”选中 3. 按键-中英 ...

  3. Android开发-浅谈架构(一)

    写在前面的话 嗯 聊聊架构. 这段时间一直在维护旧项目. 包括自己之前写的新项目 越来越发现 一个架构清晰的项目往往让人赏心悦目.不至于在一个bug丢过来之后手足无措.包括以后别人接收自己的项目 能很 ...

  4. FFmpegUtil

    这几天没事研究音频玩 比如 X配音app的配音功能 录一段 pcm或者wav格式的文件 替换mp4指定位置的音频刚开始卡在 pcm混合以及pcm指定位置插入.思路 一段段的视频进行切割 用到MP4Co ...

  5. <meta>详解

    一.元数据和<meta> 元数据是描述以提供关于其他数据的数据,在<meta>中,html document是被描述的数据,meta标签中包括的数据是描述html docume ...

  6. Redis学习笔记(二)字符串进阶

    1.增减操作 字符串可以储存字节串.整数.浮点数三种类型的值,如果值无法被解释为十进制的整数或浮点数,那么对此值进行增减操作会返回错误,如果对一个不存在的或者保存了空串的键进行增减操作,Redis将当 ...

  7. 保密安全风险自评估单机版检查工具V1.0

    下载链接:http://download.csdn.net/download/moremoretea1983/10273128

  8. cyclic swapping algorithm

    原文见:https://leetcode.com/problems/couples-holding-hands/discuss/113362/JavaC%2B%2B-O(N)-solution-usi ...

  9. RSA2

    进行签名的加密 package com.goboosoft.common.pay.util; import java.io.ByteArrayInputStream; import java.io.I ...

  10. feign 负载均衡熔断器

    feign:和zuul配合进行负载均衡. 注解的含义: @EnableDiscoveryClient 声明它是一个资源服务端,即可以通过某些接口调用一些资源: @EnableFeignClients ...