Cod sursa(job #2775150)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 14 septembrie 2021 17:13:12
Problema Oz Scor 100
Compilator c-64 Status done
Runda Arhiva de probleme Marime 0.6 kb
#include<stdio.h>
int n,m,i,d[100010],t,a[100010],b[100010];
long long v[10001];
int C(int a,int b)
{
    return !b?a:C(b,a%b);
}
int main()
{
    freopen("oz.in","r",stdin),freopen("oz.out","w",stdout),scanf("%d%d",&n,&m);
    for(i=1;i<=n;++i)
        v[i]=1;
    for(i=1;i<=m;++i)
        scanf("%d%d%d",a+i,b+i,d+i),v[a[i]]=(v[a[i]]*d[i])/C(v[a[i]],d[i]),v[b[i]]=(v[b[i]]*d[i])/C(v[b[i]],d[i]);
    for(i=1;i<=m&&!t;++i)
        if(C(v[a[i]],v[b[i]])!=d[i])
            t=1;
    if(!t)
        for(i=1;i<=n;++i)
            printf("%d ",v[i]);
    else
        printf("-1");
    return 0;
}