Pagini recente » Cod sursa (job #2269390) | Cod sursa (job #1093093) | Cod sursa (job #2451571) | Cod sursa (job #2747489) | Cod sursa (job #237315)
Cod sursa(job #237315)
#include <stdio.h>
int N,M,v[10000],i,j,d,a[100000],b[100000],c[100000],ok;
int cmmdc(int a, int b)
{
int r;
while (b)
{
r=a%b;
a=b;
b=r;
}
return a;
}
int main()
{
freopen("oz.in","r",stdin);
scanf("%d %d\n",&N,&M);
for (i=1;i<=N;++i)
v[i]=1;
for (i=1;i<=M;++i)
{
scanf("%d %d %d\n", &a[i],&b[i],&c[i]);
v[a[i]]=(v[a[i]]*c[i])/cmmdc(v[a[i]],c[i]);
v[b[i]]=(v[b[i]]*c[i])/cmmdc(v[b[i]],c[i]);
}
ok=1;
for (i=1;i<=M;++i)
if (cmmdc(v[a[i]],v[b[i]])!=c[i])
{
ok=0;
break;
}
freopen("oz.out","w",stdout);
if (!ok) printf("-1");
else
{
for (i=1;i<=N;++i)
printf("%d ", v[i]);
}
return 0;
}