• 杭电1020-Encoding


    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 <cstdlib>
    #include <iostream>
    #include <string>
    using namespace std;

    int main(int argc, char *argv[])
    {
        int n,len,num,i;
        cin>>n;
        string s;
        char temp;
        while(n--)
        {
           cin>>s;
           len=s.length();
           temp=s[0];
           num=1;;
           for(i=1;i<len;i++)
           {
             if(temp==s[i])
               num++;
             else
             {
                 if(num!=1)
                 cout<<num<<temp;
                 else
                 cout<<temp;
                 
                 num=1;
                 temp=s[i];
             }
           }
           if(num!=1)
              cout<<num<<temp;
           else
              cout<<temp;
           
           cout<<endl;
        }
        system("PAUSE");
        return EXIT_SUCCESS;
    }

  • 相关阅读:
    053-005
    053-002
    053-004
    Dynamic Programming: Fibonacci
    Some tips on using HashSet<T> and List<T>
    使用NPOI导出DataTable到Excel
    简简单单写个特效
    vue项目使用tinymce 适用于5.0版本
    封装AJAX
    全屏滑动效果
  • 原文地址:https://www.cnblogs.com/wft1990/p/4330998.html
Copyright © 2020-2023  润新知