Cod sursa(job #3239253)

Utilizator Radu_GrigorieGrigorie Radu Stefan Radu_Grigorie Data 3 august 2024 16:35:44
Problema Oz Scor 25
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <fstream>
using namespace std;
ifstream fin("oz.in");
ofstream fout("oz.out");
int v[100005][3];
int w[10005];
int main()
{
    int n, m;
    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];
        if(w[v[i][1]]%v[i][3]!=0)
        w[v[i][1]]*=v[i][3];
        if(w[v[i][2]]%v[i][3]!=0)
        w[v[i][2]]*=v[i][3];
    }
    for(int i=1; i<=m; i++)
    {
        int a=w[v[i][1]], b=w[v[i][2]], d=v[i][3];
        while(b!=0)
        {
            int r=a%b;
            a=b;
            b=r;
        }
        if(a!=d)
        {
            fout << -1;
            return 0;
        }
    }
    for(int i=1; i<=n; i++)
    {
        fout << w[i] << " ";
    }
    return 0;
}