加油,就是字符串排序。不过这里我们需要稍微改进一下默认的排序。
#include <iostream> #include <algorithm> #include <vector> #include <string.h> using namespace std; int main() { int n; while (cin >> n) { vector<string> f; for (int i = 0; i < n; i++) { string s; cin >> s; f.emplace_back(s); } sort(f.begin(), f.end(), [](string a, string b) { if (a.length() != b.length()) return a.length() < b.length(); return a < b; }); for (int i = 0; i < n; i++) cout << f[i] << endl; } }