Pagini recente » Cod sursa (job #1614939) | Cod sursa (job #1510430) | Cod sursa (job #2284132) | Cod sursa (job #2463600) | Cod sursa (job #164767)
Cod sursa(job #164767)
#include <stdio.h>
#define DIM 10001
int cmmdc(int a, int b){
long int r;
while (b) {
r = a%b;
a = b;
b = r;
}
return a;
}
int v[DIM];
int n,m,a,b,d,a1,b1,ok,i;
int main(){
FILE *f = fopen("oz.in","r");
fscanf(f,"%d %d",&n,&m);
for (i=1;i<=n;i++)
v[i]=1;
for (i=1;i<=m;i++) {
fscanf(f,"%d %d %d",&a,&b,&d);
a1 = cmmdc(v[a],d);
v[a]=v[a]*(d/a1);
b1 = cmmdc(v[b],d);
v[b]=v[b]*(d/b1);
}
fclose(f);
ok=1;
f = fopen("oz.in","r");
fscanf(f,"%d %d",&n,&m);
for (i=1;i<=m;i++) {
fscanf(f,"%d %d %d",&a, &b, &d);
if (cmmdc(v[a],v[b])!=d)
ok=0;
}
fclose(f);
FILE *g = fopen("oz.out","w");
if (ok) {
for (i=1;i<=n;i++)
fprintf(g,"%d ",v[i]);
} else
fprintf(g,"-1");
fclose(g);
return 0;
}