解题思路:这种多个数找,直接结构体然后sort排序大小,比较快
注意事项: 年月日一样的话,要按身份证号大小排(题上没说容易忽略)
参考代码:
#include<cstdio>
#include<algorithm>
using namespace std;
const int maxn=100010;
struct Date
{
long long shenfen = 0;
int nian = 0;
int yue = 0;
int ri = 0;
}date[maxn];
bool cmp(Date a, Date b)
{
if (a.nian != b.nian)return a.nian > b.nian;
else if (a.yue != b.yue)return a.yue > b.yue;
else if (a.ri != b.ri) return a.ri > b.ri;
else return a.shenfen > b.shenfen; //依次比较年月日大小,如果都一样则按身份证号大小依次排,题上没说容易忽略
}
int main()
{
long long a=0, b=0, c=1, d=8;
long long ci = 0;
scanf("%lld",&ci);
while (ci--)
{
scanf("%lld", &date[a].shenfen);
date[a].nian = date[a].shenfen % 1000000000000 / 100000000;
date[a].yue = date[a].shenfen % 100000000 / 1000000;
date[a].ri = date[a].shenfen % 1000000 / 10000;
a++;
}
sort(date,date+a,cmp);
for (int i = 0; i<a; i++)
{
printf("%lld\n", date[i].shenfen);
}
return 0;
}
0.0分
13 人评分
WU-蓝桥杯算法提高VIP-企业奖金发放 (C++代码)浏览:1267 |
三角形 (C++代码)递归(存在大量重复计算,容易出现时间超限)浏览:836 |
【金明的预算方案】 (C++代码)浏览:873 |
1124题解浏览:630 |
简单的a+b (C语言代码)浏览:1024 |
C语言程序设计教程(第三版)课后习题10.7 (C语言代码)浏览:742 |
GC的苦恼 (C语言代码)浏览:672 |
Pascal三角 (C语言代码)浏览:707 |
矩阵的对角线之和 (C语言代码)浏览:1401 |
分解质因数 (C++代码)浏览:1561 |