hdu4509 湫湫系列故事——減肥記II (離散化思想)
Problem Description
雖然制定了減肥食譜,但是湫湫顯然克制不住吃貨的本能,根本沒有按照食譜行動!
於是,結果顯而易見…
但是沒有什麼能難倒高智商美女湫湫的,她決定另尋對策——吃沒關系,咱吃進去再運動運動消耗掉不就好了?
湫湫在內心咆哮:“我真是天才啊~(≧▽≦)/~”
可是,大家要知道,過年回家多忙啊——幫忙家裡做大掃除,看電影,看小說,高中同學聚餐,初中同學聚餐,小學同學聚餐,吃東西,睡覺,吃東西,睡覺,吃東西,睡覺……所以鍛煉得抽著時間來。
但是,湫湫實在太忙了,所以沒時間去算一天有多少時間可以用於鍛煉,現在她把每日行程告訴你,拜托你幫忙算算吧~
皮埃斯:一天是24小時,每小時60分鐘 Input 輸入數據包括多組測試用例。
每組測試數據首先是一個整數n,表示當天有n件事要做。
接下來n行,第i行是第i件事的開始時間和結束時間,時間格式為HH:MM。
[Technical Specification]
1. 1 <= n <= 500000
2. 00 <= HH <= 23
3. 00 <= MM <= 59
Output 請輸出一個整數,即湫湫當天可以用於鍛煉的時間(單位分鐘) Sample Input
1
15:36 18:40
4
01:35 10:36
04:54 22:36
10:18 18:40
11:47 17:53
Sample Output
1256
179
題目分析:
將一天的時間看成1440分鐘,如果某一分鐘i已經占用,則vis[i]=1;對於每個時間段轉化為分鐘,判斷每一分鐘
是否占用,進行記錄即可,時間上能夠過去,最多為O(1440*n),哎,應該還有其他方法優化。
AC代碼:
/** *@xiaoran *模擬水題 */ #include #include #include