题目描述
输入
输出
输出身份证。
样例输入1
5
466272307503271156
215856472207097978
234804580401078365
404475727700034980
710351408803093165
样例输出1
404475727700034980
234804580401078365
215856472207097978
710351408803093165
466272307503271156
做法1
#include <bits/stdc++.h> using namespace std; int main() { int n; cin >> n; vector<string> a(n); for (int i = 0; i < n; ++i) cin >> a[i]; /* 根据第7~14位进行排序 */ sort(a.begin(), a.end(), [](string &lhs, string &rhs) { string l = lhs.substr(6, 8); string r = rhs.substr(6, 8); return l > r || (l == r && lhs < rhs); }); for (auto &s: a) cout << s << endl; return 0; }