Cod sursa(job #3239255)

Utilizator Radu_GrigorieGrigorie Radu Stefan Radu_Grigorie Data 3 august 2024 16:58:22
Problema Oz Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("oz.in");
ofstream fout("oz.out");
int v[100005][3];
int w[10005];
int main()
{
    int n, m, k;
    fin >> n >> m;
    for(int i=1; i<=n; i++)
    {
        w[i] = 1;
    }
    for(int i=1; i<=m; i++)
    {
        fin >> v[i][1] >> v[i][2] >> v[i][3];
        k = __gcd(v[i][3], w[v[i][1]]);
        w[v[i][1]] = w[v[i][1]]/k*v[i][3];
        k = __gcd(v[i][3], w[v[i][2]]);
        w[v[i][2]] = w[v[i][2]]/k*v[i][3];
    }
    for(int i=1; i<=m; i++)
    {
        if(__gcd(w[v[i][1]],w[v[i][2]])!=v[i][3])
        {
            fout << -1;
            return 0;
        }
    }
    for(int i=1; i<=n; i++)
    {
        fout << w[i] << " ";
    }
    return 0;
}