NKBUS - Bus

Tác giả: khuc_tuan

Ngôn ngữ: C++

#include <iostream>
#include <queue>
using namespace std;

int main() {
	int n, m;
	priority_queue<int, vector<int>, greater<int> > q;
	scanf("%d%d", &n, &m);
	int total_time = 0;
	for(int i=0;i<n;++i) {
		int x, k, t;
		scanf("%d%d", &x, &k);	
		for(int j=0;j<k;++j) {
			scanf("%d", &t);
			if(t < total_time) t = total_time;
			q.push(t - total_time);
		}
		total_time += x;
	}
	int res = 0;
	for(int i=0;i<m;++i) if(q.size()>0) {
		res = q.top();
		q.pop();
	}
	cout << res + total_time << endl;
	return 0;
}

Download