代码的掌控能力还是不太行 老是遗漏某种情况……
#include <iostream>
#include <vector>
#include <cctype>
#include <algorithm>
using namespace std;
int main() {
string s;
cin >> s;
vector<string> vec;
string n;
for(int i = 0; i < s.size(); ++i) {
if(isdigit(s[i])) {
n += s[i];
} else {
if(i > 0 && isdigit(s[i-1])) {
vec.push_back(n);
n = "";
}
}
}
//不要遗漏这一步 因为有可能数字字符串结尾 来不及push进去for循环就结束了
if(!n.empty()) vec.push_back(n);
sort(vec.begin(), vec.end(), [](string a, string b) {
return a.size() > b.size();
});
int l = vec[0].size();
for(int i = 0; i < vec.size(); ++i) {
if(vec[i].size() == l) cout << vec[i];
else break;
}
cout << ',' << l << endl;
return 0;
}



京公网安备 11010502036488号