Cod sursa(job #1335948)

Utilizator zombacDica Razvan zombac Data 6 februarie 2015 09:34:28
Problema Oz Scor 75
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <fstream>
using namespace std;
ifstream fin ("oz.in");
ofstream fout ("oz.out");
long long N, M, i, j, d, V[10010];
bool w = 1;

long long cmmmc(long long a, long long b)
{
    long long val = a * b, r;
    while (b)
    {
        r = a % b;
        a = b;
        b = r;
    }
    return val / a;
}

int main()
{
    fin >> N >> M;
    for (int k = 1; k <= N; k++) V[k] = 1;
    for (int k = 1; k <= M; k++)
    {
        fin >> i >> j >> d;
        V[i] = cmmmc(V[i], d);
        V[j] = cmmmc(V[j], d);
        if (V[i] > 2000000000 || V[j] > 2000000000) w = -1;
    }
    if (w > 0) for (int k = 1; k <= N; k++) fout << V[k] << ' ';
    else fout << "-1";
    fout << '\n';
    fout.close();
    return 0;
}