1028 人口普查

#include <stdio.h>
struct pc
{
	char name[6];
	int yy,mm,dd;
}k,max,min;
int main()
{
	int n,c=0;
	scanf("%d",&n);
	min.yy=1814;max.mm=9;max.dd=6;
	max.yy=2014;min.mm=9;min.dd=6;
	for(int i=0;i<n;i++)
	{
		scanf("%s %d/%d/%d",k.name,&k.yy,&k.mm,&k.dd);
		
		//无效出生日期 
		if(k.yy<1814||(k.yy==1814&&k.mm<9)||(k.yy==1814&&k.mm==9&&k.dd<6)||k.yy>2014||(k.yy==2014&&k.mm>9)||(k.yy==2014&&k.mm==9&&k.dd>6))	  
        {
            c++;
            continue;
        }
		//找出年长的
		if(k.yy<max.yy||(k.yy==max.yy&&k.mm<max.mm)||(k.yy==max.yy&&k.mm==max.mm&&k.dd<max.dd))
			max=k;
		//找出年轻的
		if(k.yy>min.yy||(k.yy==min.yy&&k.mm>min.mm)||(k.yy==min.yy&&k.mm==min.mm&&k.dd>min.dd))
			min=k;
	}
	printf("%d",n-c);
    if(c!=n)
        printf(" %s %s",max.name,min.name);
	return 0;
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值