题目:http://acm.hdu.edu.cn/showproblem.php?pid=1861
代码:
#include<stdio.h> #include<stdlib.h> struct info{//记录的数据结构; int id;//船号; char key;//键值; int time;//时间(分钟表示); }tur[10000]; int main(){ int i=0,j=0,count=0,time=0; //count记录租船次数,time记录总时间; while(scanf("%d",&tur[i].id)!=EOF&&tur[i].id!=-1){ getchar(); scanf("%c",&tur[i].key);//输入键值; char t[6]; scanf("%s",t);//输入时间; tur[i].time=((t[0]-'0')*10+t[1]-'0')*60+(t[3]-'0')*10+(t[4]-'0'); //printf("%d*****/n",tur[i].time); if(tur[i].id!=0){ if(tur[i].key=='E'){ for(j=0;j<i;j++){ if(tur[j].key=='S'&&tur[j].id==tur[i].id){ count++; time+=tur[i].time-tur[j].time; tur[j].id=-1; tur[j].key='#'; tur[j].time=-1;//表示已经计算过; break; } } } ++i;//记录条数增加1; } else{ //printf("%d/n",i); printf("%d %d/n",count,(int)((time*1.0)/(count*1.0)+0.5)); i=0; count=0; time=0; } } }