牛客网PAT练兵场-人口普查
2024-09-07 19:49:47
题目地址:https://www.nowcoder.com/pat/6/problem/4054
题解:结构体排序即可
/**
* Copyright(c)
* All rights reserved.
* Author : YCute
* Date : 2019-11-19-20.13.37
* Description : 结构体排序
*/
#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
using namespace std; struct bir{
char name[];
int year;
int month;
int day;
}; int cmp(struct bir a,struct bir b){
if(a.year<b.year) return ;
else if(a.year==b.year){
if(a.month<b.month) return ;
else if(a.month==b.month){
if(a.day<b.day) return ;
else return ;
}else return ;
}else{
return ;
}
} int main(){
int n;
struct bir b[];
scanf("%d",&n);
getchar();
for(int i=;i<n;i++){
scanf("%s %4d/%2d/%2d",b[i].name,&b[i].year,&b[i].month,&b[i].day);
}
sort(b,b+n,cmp);
int i=;
while(){
if(b[i].year<){
i++;
continue;
}
else if(b[i].year==){
if(b[i].month<){
i++;
continue;
}
else if(b[i].month==){
if(b[i].day<){
i++;
continue;
}
else break;
}else{
break;
}
}else{
break;
}
}
int j=n-;
while(j){
if(b[j].year>){
j--;
continue;
}
else if(b[j].year==){
if(b[j].month>){
j--;
continue;
}else if(b[j].month==){
if(b[j].day>){
j--;
continue;
}
else break;
}else break;
}else {
break;
} }
printf("%d %s %s",j-i+,b[i].name,b[j].name);
return ;
}
最新文章
- 1051 Wooden Sticks
- spring+hibernate+struts整合(1)
- 2016022612 - redis事务命令集合
- C#学习日志 day 2 ------ 控制台颜色以及windowsphone 窗体应用试建
- _foreach
- javascript中的__proto__和prototype
- MySQL之多表操作
- Servlet常用的接口和类
- SQL反模式学习笔记8 多列属性
- 小白的REDIS学习(二)-链表
- 角度&;弧度转换
- deep learning RNN
- Fiddler 会话过滤功能
- Linux内核分析——进程的描述和进程的创建
- 好汉两个半第一季/全集Two And A Half Men迅雷下载
- [加密]展讯secureboot方案
- POJ 3264 RMQ水题
- Android之WebViewClient与WebChromeClient的区别
- SEO优化上首页之搜索引擎原理简要
- Oracle 循环插入测试数据(网上收集整理)
热门文章
- P1359租用游艇(dp+dfs)
- 01_Linux基础篇
- PDOStatement::nextRowset
- intel:spectre&;Meltdown侧信道攻击(四)—— cache mapping
- RxJS 中的观察者和迭代器模式
- Android 自定义组件,自定义LinearLayout,ListView等样式的组件
- Python使用socketServer包搭建简易服务器过程详解
- Hibernate配置文件和映射文件详解
- 论文结果图:matplotlib和seaborn实现
- 【LeetCode/LintCode】 题解丨字节跳动试题:第k大的子数组