Pagini recente » Cod sursa (job #70730) | Cod sursa (job #42079) | Cod sursa (job #2968205) | Monitorul de evaluare | Cod sursa (job #2611470)
#include <iostream>
#include <fstream>
#include <queue>
#define tip_coada pair <int, int>
#define Flash ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0);
using namespace std;
ifstream in ("fabrica.in");
ofstream out("fabrica.out");
int n, nr1, nr2;
int x, maxi1=0, maxi2=0;
priority_queue <tip_coada, vector<tip_coada>, greater<tip_coada> > p1;
priority_queue <tip_coada, vector<tip_coada>, greater<tip_coada> > p2;
int main()
{
in>>n>>nr1>>nr2;
for(int i=1; i<=nr1; i++)
{
in>>x;
p1.push({x, x});
}
for(int i=1; i<=nr2; i++)
{
in>>x;
p2.push({x, x});
}
for(int i=1; i<=n; i++)
{
auto per1=p1.top();
p1.pop();
p1.push({per1.first+per1.second, per1.second});
maxi1=max(maxi1, per1.first);
auto per2=p2.top();
cout<<per2.second<<" ";
p2.pop();
int tfin=max(per1.first, per2.first-per2.second);
p2.push({tfin+per2.second, per2.second});
maxi2=max(maxi2, tfin);
}
out<<maxi1<<" "<<maxi2;
return 0;
}