Cod sursa(job #2787405)

Utilizator CatalinCosminGirgoriu Cosmin CatalinCosmin Data 23 octombrie 2021 11:04:24
Problema Congr Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.78 kb
#include <bits/stdc++.h>
using namespace std;
/**
Algoritmi randomizati

NP-complete
*/
ifstream fin("semne.in");
ofstream fout("semne.out");
int a[600002], p, n;
int b[300002], nb, c[300002], nc;

int main()
{
    int i, j, x, s = 0;
    fin >> p;
    n = 2 * p - 1;
    for (i = 1; i <= n; i++)
    {
        fin >> x;
        a[i] = x % p;
        if (i <= p)
        {
            b[nb++] = i;
            s = (s + a[i]) % p;
        }
        else c[nc++] = i;
    }
    srand(time(0));
    while (s != 0)
    {
        i = rand() % nb;
        j = rand() % nc;
        s = (s - a[b[i]] + a[c[j]] + p) % p;
        swap(b[i], c[j]);
    }
    for (i = 0; i < nb; i++)
        fout << b[i] << " ";
    fout << "\n";
    fout.close();
    return 0;
}