Untitled
unknown
plain_text
2 years ago
864 B
5
Indexable
#include<iostream> using namespace std; int t,m,d; int phut[5],giay[5], energy[5]; int ans; int T[5]; void backtrack(int k,int dis, int time, int e) { if (e < 0 || time >= ans) return; if (dis == d) { if (ans > time) ans = time; return; } for (int i=k; i<5; i++) { backtrack(i, dis+1, time+T[i], e-energy[i]); } } int main() { //freopen("input.txt","r",stdin); cin >> t; for (int tc=1; tc<=t; tc++) { cin >> m >> d; for (int i=0; i<5; i++) { cin >> phut[i] >> giay[i] >> energy[i]; } for (int i=0; i<5; i++) { T[i] = giay[i] + phut[i]*60; } ans = 99999999; backtrack(0,0,0,m); cout << "Case #" << tc << endl; if (ans == 99999999) cout << "-1" << endl; else cout << ans/60 << " " << ans%60 << endl; } }
Editor is loading...