zoukankan      html  css  js  c++  java
  • hdu 1020 简单的字符串处理

    题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=1020

    Encoding

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
    Total Submission(s): 23937    Accepted Submission(s): 10515


    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

    代码如下:

     1 #include<iostream>
     2 #include<stdio.h>
     3 #include<string>
     4 #include<string.h>
     5 #include<map>
     6 #include<math.h>
     7 #include<algorithm>
     8 #define N 10005
     9 using namespace std;
    10 char str[N];
    11 int main()
    12 {
    13     int n,i,t;
    14     scanf("%d",&n);
    15     while(n--)
    16     {
    17         scanf("%s",str);
    18         i=0;
    19         while(str[i]!='')
    20         {
    21             t=i;
    22             while(str[t+1] == str[t])
    23                 t++;
    24             if(t>i)
    25                 printf("%d%c",t-i+1,str[t]);
    26             else
    27                 printf("%c",str[t]);
    28             i=t+1;
    29         }
    30         printf("
    ");
    31     }
    32     return 0 ;
    33 }
  • 相关阅读:
    透过书本了解HTML5
    Seam性能讨论
    Maven依赖管理
    Tapestry
    为HTML5的未来制定学习计划
    后缀数组
    HDU 1042(大数)
    教你理解复杂的C/C++声明
    编程修养
    平衡二叉树
  • 原文地址:https://www.cnblogs.com/zn505119020/p/3582002.html
Copyright © 2011-2022 走看看