Cod sursa(job #2763482)

Utilizator Teodor_AxinteAxinte Teodor-Ionut Teodor_Axinte Data 14 iulie 2021 12:34:23
Problema Sortare topologica Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.76 kb
#include <fstream>
#include <algorithm>

using namespace std;

ifstream fin("sortaret.in");
ofstream fout("sortaret.out");

struct abc {
    int a;
    int b;
    int c;
};

int n, m;

int sort_1(abc var1, abc var2) {
    return var1.b < var2.b;
}

int sort_2(abc var1, abc var2) {
    if (var1.b == var2.b)
        return var1.c <= var2.c;
    else
        return 0;
}

abc v[500050];

int main() {
    fin >> n >> m;
    for (int i = 1; i <= m; i++) {
        int x, y;
        fin >> x >> y;
        v[i].a = i;
        v[i].b = x;
        v[i].c = y;
    }
    for (int i = m; i <= n; i++)
        v[i].a = i;

    sort(v + 1, v + m + 1, sort_1);
    sort(v + 1, v + m + 1, sort_2);
    int i;
    for (i = 1; i <= n; i++)
        fout << v[i].a << " ";


    return 0;

}