1084 外观数列 解题代码测试结果问题整理 解题代码 #include<iostream> #include<vector> #include<string> using namespace std; string handle(string str) { vector<pair<char, int> > v; int len = str.length(); for (int i = 0; i < len; i++) { if (!i || str[i] != str[i - 1]) { v.push_back(make_pair(str[i], 1)); } else v.back().second++; } string ret; for (vector<pair<char,int> >::iterator it = v.begin(); it != v.end();it++) { ret.push_back(it->first); ret.push_back(it->second + '0'); } return ret; } int main() { string str; int n; cin >> str >> n; for (int i = 0; i < n - 1; i++) str = handle(str); cout << str; return 0; } 测试结果 问题整理 1.基础题目。