zoukankan      html  css  js  c++  java
  • 杭电1020

    Encoding

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


    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


    #include <iostream>
    #include <cstring>
    using namespace std;
    
    int main(int argc, char **argv)
    {
        int num;
        string str;
        cin >> num;
        for ( int i =0; i < num; ++ i)
        {
            cin >> str;
            int j = 0;
            while (j < str.length()) 
            {
                char ch = str[j];
                int count = 0;
                while (ch == str[j] && j < str.length()) 
                {
                    ++ j;
                    ++ count;
                }
                if ( 1 != count )cout << count;
                cout << ch;
            }
            cout << endl;
            
        }
    }
    




  • 相关阅读:
    【洛谷P1119】灾后重建
    【洛谷P1462】通往奥格瑞玛的道路
    【洛谷P1991】无线通讯网
    poj 2892(二分+树状数组)
    hdu 1541(树状数组)
    hdu 5059(模拟)
    hdu 5056(尺取法思路题)
    poj 2100(尺取法)
    hdu 2739(尺取法)
    poj 3320(尺取法)
  • 原文地址:https://www.cnblogs.com/dancingrain/p/3405218.html
Copyright © 2011-2022 走看看