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.
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
2ABCABBCCC
Sample Output
ABCA2B3C
//看错题目,WA了几次,ORZ
#include <iostream>#include <cstdio>#include <cstring>using namespace std;int main(){ int n,i,cnt; char str[10005]; cin >> n; while(n--) { cin >> str; for(i = 0; str[i]!='\0';) { cnt = 1; while(str[i] == str[i+1]) { cnt++; i++; } if(cnt == 1) cout << str[i]; else cout << cnt << str[i]; i++; } cout << endl; } return 0;}
再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow