Pagini recente » Cod sursa (job #2600148) | Cod sursa (job #641653) | Cod sursa (job #2497576) | Cod sursa (job #1473948) | Cod sursa (job #273407)
Cod sursa(job #273407)
#include <stdio.h>
#define DIM 10001
long v[DIM];
long n,m,i,ok,a,b,r,x,y,z;
int main(){
FILE *f = fopen("oz.in", "r");
FILE *g = fopen("oz.out", "w");
fscanf(f,"%ld %ld",&n,&m);
for (i=1; i<=n; i++)
v[i] = 1;
for (i=1; i<=m; i++) {
fscanf(f,"%ld %ld %ld",&x,&y,&z);
a = v[x];
b = z;
while (b!=0) {
r = a%b;
a = b;
b = r;
}
v[x] = v[x]/a*z;
a = v[y];
b = z;
while (b!=0) {
r = a%b;
a = b;
b = r;
}
v[y] = v[y]/a*z;
}
fclose(f);
ok = 1;
FILE *q = fopen("oz.in", "r");
fscanf(q,"%ld %ld",&n,&m);
for (i=1; i<=m; i++) {
fscanf(q,"%ld %ld %ld",&x,&y,&z);
a = v[x];
b = v[y];
while (b!=0) {
r = a%b;
a = b;
b = r;
}
if (a!=z) {
ok = 0;
break;
}
}
fclose(q);
if (!ok)
fprintf(g,"-1");
else
for (i=1; i<=n; i++)
fprintf(g,"%ld ",v[i]);
fclose(g);
return 0;
}