提交时间:2024-11-15 20:26:05

运行 ID: 56781

#include<stdio.h> #include<string.h> struct node{ char id[10]; int age; int index; }; struct node old[100],young[100],temp; int main() { int n; int cnto=0; int cnty=0; scanf("%d",&n); for(int i=0;i<n;i++){ scanf("%s %d",temp.id,&temp.age); if(temp.age>=60){ strcpy(old[cnto].id,temp.id); old[cnto].age=temp.age; old[cnto].index=i; cnto++; } else{ strcpy(young[cnty].id,temp.id); young[cnty].age=temp.age; young[cnty].index=i; cnty++; } } for(int i=0;i<=cnto-2;i++){ for(int j=i+1;j<=cnto-1;j++){ if(old[i].age<old[j].age||(old[i].age==old[j].age&&old[i].index>old[i].index)){ temp=old[i]; old[i]=old[j]; old[j]=temp; } } } for(int i=0;i<=cnto-1;i++) printf("%s\n",old[i].id); for(int j=0;j<=cnty-1;j++) printf("%s\n",young[j].id); return 0; }