注:1、检查点二是今天(2014/9/6)出生的,要判零
2、检查点四是没有人符合要求,输出0
#include<bits/stdc++.h>
using namespace std;
int main(){
int n;
cin>>n;
string young;
string old;
int max=0;
int min=10000000;
int count=0;
while(n--){
string temp;
cin>>temp;
int a,b,c;
scanf("%d/%d/%d",&a,&b,&c);
int number = (2014-a)*365+(9-b)*30+(6-c);
if(number>=0&&number<=200*365){
if(number>=max){
old=temp;
max=number;
}
if(number<=min){
young =temp;
min=number;
}
count++;
}
}
if(count){
cout<<count;
if(max!=0)
{
cout<<" "<<old;
}
if(min!=10000000){
cout<<" "<<young;
}
}
else{
cout<<0;
}
return 0;
}
本文介绍了一个使用C++实现的年龄排序算法,该算法能够从输入的日期中计算出年龄,并找出最年长和最年轻的人。通过读取一系列的日期输入,程序计算每个人的年龄并进行比较,最终输出年龄最大和最小的人的名字。
163

被折叠的 条评论
为什么被折叠?



