Pagini recente » Cod sursa (job #3271040) | Cod sursa (job #2596066) | Cod sursa (job #2587853) | Cod sursa (job #205980) | Cod sursa (job #163487)
Cod sursa(job #163487)
#include <stdio.h>
#include <stdlib.h>
#define N 10010
long long v[N];
int n,m;
int cmmdc(int a,int b){
if (b==0)
return a;
else return cmmdc(b,a%b);
}
long long cmmmc(int a,int b){
long long c;
c=a;
c*=b;
return c/cmmdc(a,b);
}
void add(int i,int j,int d){
v[i]=cmmmc(v[i],d);
v[j]=cmmmc(v[j],d);
if (cmmdc(v[i]/d,v[j]/d)!=1){
printf("-1\n");
exit(0);
}
}
void init(){
int i;
for (i=1;i<=n;++i)
v[i]=1;
}
void scan(){
int i,j,d;
freopen("oz.in","r",stdin);
freopen("oz.out","w",stdout);
scanf("%d%d",&n,&m);
init();
while (m--){
scanf("%d%d%d",&i,&j,&d);
add(i,j,d);
}
}
void print(){
int i;
for (i=1;i<=n;++i)
printf("%lld ",v[i]);
fclose(stdin);
fclose(stdout);
}
int main(){
scan();
print();
return 0;
}