Pagini recente » Cod sursa (job #2186670) | Cod sursa (job #1493531) | Cod sursa (job #1007740) | Cod sursa (job #241465) | Cod sursa (job #2499366)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("interclasari.in");
ofstream fout("interclasari.out");
int main() {
int k; fin >> k;
vector<vector<int>> v(k);
int cnt = 0;
vector<int> crt(k);
priority_queue<pair<int, int>, vector<pair<int, int>>, greater<pair<int, int>>> pq;
for (int i = 0; i < k; i++) {
int n; fin >> n; cnt += n;
v[i].resize(n);
for (int j = 0; j < n; j++)
fin >> v[i][j];
if (n)
pq.emplace(v[i][crt[i]++], i);
}
fout << cnt << '\n';
while (cnt--) {
auto top = pq.top(); pq.pop();
fout << top.first << ' ';
if (crt[top.second] < (int) v[top.second].size())
pq.emplace(v[top.second][crt[top.second]++], top.second);
}
fout << '\n';
fout.close();
return 0;
}