Cod sursa(job #2214706)

Utilizator AdrianGemeniucAdrian Gemeniuc AdrianGemeniuc Data 19 iunie 2018 19:38:38
Problema Lupul Urias si Rau Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.26 kb
#include <fstream>
#include <vector>
#include <utility>
#include <algorithm>
using namespace std;

ifstream f("lupu.in");
ofstream g("lupu.out");
int fr[100];
int main()
{int n,x,l,i,s=0,z,y,maxim,poz;
vector <pair<int,int> > d;
f>>n>>x>>l;

for(i=1;i<=n;i++)
{
    f>>z>>y;
    d.push_back(make_pair(z,y));

}
std::sort (d.begin(), d.end());
vector <pair<int,int> >::iterator it;


for(it=d.begin();it!=d.end();it++)
    g<<(*it).first<<" ";
g<<endl;
for(it=d.begin();it!=d.end();it++)
    g<<(*it).second<<" ";
g<<endl;
g<<endl;



while(d[1].first<=x)
{
    maxim=0;
    poz=0;
for(i=1;i<=n;i++)
{
    if((d[i].first+l-1)>x and fr[i]!=1)
    {
        if(d[i].second>maxim)
        {
            maxim=d[i].second;
            poz=i;
        }
    }

}
    fr[poz]=1;
    g<<"Pozitia de pe care aleg elementul mai sus este "<<poz<<"; ";
    s+=maxim;
    for(it=d.begin();it!=d.end();it++)
        (*it).first=(*it).first+l;
    for(it=d.begin();it!=d.end();it++)
        g<<(*it).first<<" ";
    g<<endl;
    g<<"                                                  ";
    for(it=d.begin();it!=d.end();it++)
        g<<(*it).second<<" ";
g<<endl;
}
g<<s<<endl;
for(i=1;i<=n;i++)
    g<<fr[i]<<" ";



    return 0;
}