zoukankan      html  css  js  c++  java
  • HDU——1020Encoding(水题,string过)

    Encoding

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


    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了0.0

    第三遍突然有feel了。

    代码:

    #include<iostream>
    #include<string>
    #include<map>
    #include<vector>
    using namespace std;
    int main(void)
    {
        int n;
        cin>>n;
        while (n--)
        {
            string str;
            cin>>str;
            int i,j,len=str.size(),sum=1;
            for (i=0; i<len; i++)
            {
                if(str[i]==str[i+1])
                {
                    sum++;
                }
                else 
                {
                    if(sum==1)
                        cout<<str[i];
                    else
                        cout<<sum<<str[i];
                    sum=1;
                }            
            }
            cout<<endl;        
        }
        return 0;
    }
  • 相关阅读:
    KMP算法小结
    算法二叉搜索树之AVL树
    算法导论之红黑树的学习
    算法导论小结(一)
    感悟或摘抄
    js中神奇的东西
    简单了解webservice
    用<![CDATA[]]>将xml转义为 纯文本
    简单了解soap协议
    java写webservice接口
  • 原文地址:https://www.cnblogs.com/Blackops/p/5356446.html
Copyright © 2011-2022 走看看