Cod sursa(job #3157356)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 15 octombrie 2023 13:57:23
Problema Oz Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.5 kb
#include<bits/stdc++.h>
using namespace std;
ifstream f("oz.in");
ofstream g("oz.out");
int n,m,p,w=1,i,j,d,I[1<<17],J[1<<17],D[1<<17],v[1<<17];
int main()
{
    for(f>>n>>m,p=1;p<=n;++p)
        v[p]=1;
    for(p=1;p<=m;++p)
        f>>i>>j>>d,I[p]=i,J[p]=j,D[p]=d,
        v[i]*=d/__gcd(v[i],d),v[j]*=d/__gcd(v[j],d);
    for(p=1;p<=m&&w;)
        (__gcd(v[I[p]],v[J[p]])==D[p])?++p:w=0;
    if(w)
        for(p=1;p<=n;++p)
            g<<v[p]<<' ';
    else
        g<<-1;
    return 0;
}