PTA B1028 人口普查

判断是否在合法区间,再更新最年长和最年轻的人。

读入新日期来更新时,有可能同时更新最老和最年轻,不能用if ,else 

#include
struct person{
  char name[10];
  int yy,mm,dd;
}oldest,youngest,left,right,temp;

bool LessEqu(person a,person b){
  if(a.yy!=b.yy) return a.yy<=b.yy;
  else if(a.mm!=b.mm) return a.mm<=b.mm;
  else return a.dd<=b.dd;
}
bool MoreEqu(person a,person b){
  if(a.yy!=b.yy) return a.yy>=b.yy;
  else if(a.mm!=b.mm) return a.mm>=b.mm;
  else return a.dd>=b.dd;
}
void init(){
  youngest.yy=left.yy=1814;
  oldest.yy=right.yy=2014;
  youngest.mm=oldest.mm=left.mm=right.mm=9;
  youngest.dd=oldest.dd=left.dd=right.dd=6;
}
int main(){
  init();
  int n,num=0;
  scanf("%d",&n);
  for(int i=0;i

 

你可能感兴趣的:(PTA)