身份证排序问题

简介: 身份证排序问题


题目描述

输入

输出

输出身份证。

样例输入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;
}
相关文章
解密身份证号,and 身份证与姓名认证。
解密身份证号,and 身份证与姓名认证。
|
6月前
|
JavaScript
身份证号码自动判定出生年月及性别年龄
身份证号码自动判定出生年月及性别年龄
54 0
|
JavaScript 前端开发
身份证第18位校验码如何计算
身份证第18位校验码如何计算
81 0
|
Java
利用身份证号获取生日信息
利用身份证号获取生日信息
108 0
L1-016 查验身份证 (15 分)
L1-016 查验身份证 (15 分)
163 0
7-54 查验身份证 (15 分)
7-54 查验身份证 (15 分)
95 0
|
Java
Java实现身份证号码验证
整理文档时,搜刮出一个Java实现身份证号码验证源码示例代码,稍微整理精简了一下分享给大家。
409 0