本文共 905 字,大约阅读时间需要 3 分钟。
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4510
如果没记错的话,类似的题已经出现过一次了,上次好像是也是时钟,好像都与12:00有关;
这次也一样h小时对12取余即可。
#includeint main(){ int h,m,s,T,H,M,S; scanf("%d",&T); while(T--) { int hh,mm,ss; scanf("%d:%d:%d %d:%d:%d",&H,&M,&S,&h,&m,&s); int h1 = h % 12; if((H>h1)||(H==h1&&M>m)||(H==h1&&M==m&&S>=s)) { if(S>=s) ss=S-s; else {ss=S+60-s;M--;} if(M>=m) mm=M - m; else {mm=M+60-m;H--;} if(H>=h1) hh=H-h1; } else if((h1>H)||(h1==H&&M =S)) { int xx,yy,zz; int HH = 12 , SS = 0 , MM =0 ; if(SS =h1) zz=HH-h1; ss=(xx+S)%60; int k1=(xx+S)/60; mm=(yy+M+k1)%60; int k2=(yy+M+k1)/60; hh=zz+H+k2; } printf("%02d:%02d:%02d\n",hh,mm,ss); }}
转载地址:http://gusgi.baihongyu.com/