#include <bits/stdc++.h> using namespace std; struct GeQu { string name; double zsj; double fs; }; bool cmp(GeQu a,GeQu b) { if(a.fs!=b.fs) return a.fs>b.fs; else return a.name<b.name; } int main() { int n; while(cin>>n) { if(n==0) break; int i,j,index,m,a,b; struct GeQu gq[n]; string str; for(i=0;i<n;i++) { double sum=0; cin>>str; scanf("%d:%d",&a,&b); sum=a*60+b; gq[i].name=str; gq[i].zsj=sum; } cin>>m; for(i=0;i<m;i++) { double sum=0; cin>>str; scanf("%d:%d",&a,&b); sum=a*60+b; for(j=0;j<n;j++) { if(gq[j].name==str) { if(sum<gq[j].zsj*0.2) break; else if(sum<gq[j].zsj*0.4) { gq[j].fs+=1; break; } else if(sum<gq[j].zsj*0.6) { gq[j].fs+=2; break; } else if(sum<gq[j].zsj*0.8) { gq[j].fs+=3; break; } else if(sum<gq[j].zsj) { gq[j].fs+=4; break; } else if(sum=gq[j].zsj) { gq[j].fs+=5; break; } } } } sort(gq,gq+n,cmp); for(i=0;i<n;i++) cout<<gq[i].name<<" "<<gq[i].fs<<endl; } } |
Double click to view unformatted code.