[LeetCode]2187. Minimum Time to Complete Trips (Medium) Python-2023.03.07
Posted on 2023-03-08 19:19 Uriel 閱讀(60) 評(píng)論(0) 編輯 收藏 引用 所屬分類: 閑來無事重切Leet Code 、二分.三分給出每個(gè)公交車完成一次trip所需時(shí)間time[i],以及所有需要完成的trip數(shù)totalTrips,問最少多久能完成所有trips,同一時(shí)刻可以派出任意輛車
直接二分結(jié)果
直接二分結(jié)果
1 #2187
2 #Runtime: 2092 ms (Beats 65.38%)
3 #Memory: 24.8 MB (Beats 46.15%)
4
5 class Solution(object):
6 def minimumTime(self, time, totalTrips):
7 """
8 :type time: List[int]
9 :type totalTrips: int
10 :rtype: int
11 """
12 l = 0
13 r = totalTrips * time[0]
14 while l < r:
15 mid = (l + r) // 2
16 tr = 0
17 for i in time:
18 tr += mid // i
19 if tr < totalTrips:
20 l = mid + 1
21 else:
22 r = mid
23 return l
2 #Runtime: 2092 ms (Beats 65.38%)
3 #Memory: 24.8 MB (Beats 46.15%)
4
5 class Solution(object):
6 def minimumTime(self, time, totalTrips):
7 """
8 :type time: List[int]
9 :type totalTrips: int
10 :rtype: int
11 """
12 l = 0
13 r = totalTrips * time[0]
14 while l < r:
15 mid = (l + r) // 2
16 tr = 0
17 for i in time:
18 tr += mid // i
19 if tr < totalTrips:
20 l = mid + 1
21 else:
22 r = mid
23 return l