2013騰訊編程馬拉松初賽第二場(3月22日) 小Q系列故事——為什么時光不能倒流 ---好水!!


我以為我會是最堅強的那一個 我還是高估了自己
  我以為你會是最無情的那一個 還是我貶低了自己

  就算不能夠在一起 我還是為你擔心
  就算你可能聽不清 也代表我的心意

  那北極星的眼淚 閃過你曾經的眼角迷離
  那玫瑰花的葬禮 埋葬的卻是關於你的回憶

  如果時光可以倒流 我希望不要和你分離
  如果注定分離 我希望不要和你相遇

    ——摘自《小Q失戀日記 》第17卷520頁

  這是碼農小Q第58次失戀了,也是陷得最深的一次。
  要知道,小Q自從第一次到騰訊公司報到,就被風姿綽約的前台MM徹底迷住了,這1000多個日日夜夜他無時無刻不在憧憬着他們美好的未來。為了能見到MM,他每天早到晚歸,甘願加班,連續3年被評為優秀員工,並且以全公司最快的速度晉級到四級崗位。就在他終於鼓足勇氣准備表白的時候,MM卻滿面春風地送來了一包喜糖......
  現在小Q專門請了年休假治療情傷,但情緒總不見好轉,每天足不出戶,眼睛盯着牆上的鍾表,反復念叨:“表白要趁早,時光不倒流,表白要趁早,時光不倒流......”
  假設現在已知當前的時間,讓時間倒退回若干,你能計算出鍾表顯示的時間嗎?
 

Input
輸入首先包含一個整數N,表示有N組測試用例。
接下來的N行表示N個測試用例,每行包括2個時間HH:MM:SS hh:mm:ss
HH:MM:SS表示當前的時間,hh:mm:ss表示希望倒退回去的時間。
[Technical Specification]
00<=HH<=11
00<=hh<=99
00<=MM, SS, mm, ss<=59
 

Output
請計算並輸出鍾表倒退后顯示的時間,要求輸出格式為HH:MM:SS(即時分秒均顯示2位,不足則補0),每組數據輸出占一行。
 

Sample Input
 
 
2 11:28:32 02:14:21 05:00:00 96:00:01
 

Sample Output
 
 
09:14:11 04:59:59
#include <iostream>
#include <algorithm>
#include <cstring>
#include <string>
#include <cstdio> 
#include <iomanip>
using namespace std;
const int maxn=12*60*60;
int main()
{
	int n;
	cin>>n;
	while(n--)
	{
		int x,y,z,a,b,c;
		cin>>x;
		cin.get();
		cin>>y;cin.get();
		cin>>z>>a;
		cin.get();cin>>b;
		cin.get();cin>>c;
		a%=12;
		b%=60;
		c%=60;
		int re=(a*60+b)*60+c;
		int cur=(x*60+y)*60+z;

		int ans=(cur-re+maxn)%maxn;
		int hh=ans/3600;
		ans%=3600;
		int mm=ans/60;
		ans%=60;
		printf("%02d:%02d:%02d\n",hh,mm,ans);
		
	}
	return 0;
}



注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com