# Arithmetic# Time Conversion

b682 - 2. 同學早安

🔗 前往 ZeroJudge 原題

題目描述

題目要求計算兩個時間點之間的差,並以小時和分鐘表示。輸入包含兩個時間點,每個時間點由小時和分鐘組成。輸出為兩個時間點之間的時間差,以小時和分鐘表示。如果時間差為負數,則需要加上 1440 分鐘(24 小時)使其為正數。

解題思路

題目主要涉及時間的轉換和計算。將輸入的時間轉換為分鐘,然後計算兩個時間點的差值。如果差值為負數,則加上 1440 分鐘。最後,將差值轉換為小時和分鐘,並輸出結果。

複雜度分析

  • 時間複雜度: O(1)
  • 空間複雜度: O(1)

程式碼

#include <stdio.h>
int main(){
	int a,b,c;
	while(scanf("%d%d",&a,&b)>0){
		c=a*60+b;
		scanf("%d%d",&a,&b);
		b+=a*60;
		if(b>=c)
			printf("%d %d\n",(b-c)/60,(b-c)%60);
		else
			printf("%d %d\n",(b-c+1440)/60,(b-c+1440)%60);
	}
}

Discussion