这道题的关键是理解题意:输入ABCDC,输出ABCDC,而不是AB2CD。
#include <iostream> using namespace std; //char a[]={‘A‘,‘B‘,‘C‘,‘D‘,‘E‘,‘F‘,‘G‘,‘H‘,‘I‘,‘J‘,‘K‘,‘L‘,‘M‘,‘N‘,‘O‘,‘P‘,‘Q‘,‘R‘,‘S‘,‘T‘,‘U‘,‘V‘,‘W‘,‘X‘,‘Y‘,‘Z‘}; //ABCDC就是ABCDC不是AB2CD void fun(string s) { } int main() { int t; cin>>t; while(t--) { string s; cin>>s; int len=s.length(); int res=1;s[len]=‘0‘; for(int i=0;i<len;i++) { if(s[i]==s[i+1]) res++; else { if(res==1) cout<<s[i]; else if(res>1) cout<<res<<s[i]; res=1;//res要记得重置!!! } } cout<<endl; } return 0; }
res忘记重置了!!! 循环中要 记得重置!!!
时间: 2024-11-05 15:12:46