您可以在巴黎停留a[X]小时,并想预订一些旅行。您更喜欢预订尽可能少的旅行,以享受最后的[X]小时与最小的上下文切换。
如何没有时间成本之间的交通旅行。
输入一系列的旅行时间(小时)
e.g.[1,3,6]剩余总时数( e.g.15 )
最低采购数量e.g. 3(6+6+3=15)
如果没有办法填补剩余的全部小时,return-1.
输入示例:
136
15输出
3请用java或任何语言帮助我。
发布于 2020-06-05 07:37:26
Swift
func minCoin(trips: [Int], total_hours:Int) -> Int {
if(total_hours == 0) {
return 0
}
let m: Int = trips.count
var min: Int = Int(INT_MAX)
for i in 0..<m {
if(trips[i] <= total_hours)
{
let curr_min: Int = minCoin(trips:trips, total_hours:(total_hours-trips[i]))
if(curr_min != INT_MAX && curr_min + 1 < min){
min = curr_min + 1
}
}
}
return min
}Java
int minCoin(int trips[], int total_hours)
{
if(total_hours == 0)
return 0
int m = trips.length;
int min = INT_MAX
for(int i = 0; i++; i<m)
{
if(trips[i] <= total_hours)
{
int curr_min = minCoin(trips, total_hours-trips[i])
if(curr_min != INT_MAX && curr_min + 1 < min)
min = curr_min + 1
}
}
return min
}https://stackoverflow.com/questions/61400834
复制相似问题