Cod sursa(job #3193721)

Utilizator bobic.teona20Bobic Teona-Christiana bobic.teona20 Data 15 ianuarie 2024 15:18:56
Problema Taramul Nicaieri Scor 5
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.14 kb
#include <fstream>
#include <algorithm>
#include <vector>

#define N_MAX 101

using namespace std;

ifstream fin("harta.in");
ofstream gout("harta.out");

vector<pair<int, int>> grad; //vectorul de grade
vector<int> graf(N_MAX);

bool compare(int a, int b)
{
    return grad[a] > grad[b];
}

int main()
{
    int n;
    fin >> n;
    ///Citim graful (gradele nodurilor si aflam nr de drumuri)
    grad.resize(n);
    graf.resize(n);
    int nr_drumuri=0;
    for (int i = 0; i < n; i++)
    {
        fin >> grad[i].first >> grad[i].second;
        //graf[i]=i;
        nr_drumuri+=grad[i].first;
    }
    //afisam nr de drumuri
    gout << nr_drumuri << '\n';
    ///trecem prin fiecare nod
    for (int i = 0; i < n; i++)
    {
        //sort(graf.begin(), graf.end(), compare); //sortam descrescator in functie de grade
        for (int j = 0; j < n; j++)
        {
            if (i != j && grad[j].first > 0 && grad[i].second > 0)
            {
                grad[j].first--;
                grad[i].second--;
                gout << j + 1 << ' ' << i + 1 << '\n';
            }

        }
    }
    return 0;
}