Pagini recente » Cod sursa (job #244633) | Cod sursa (job #67717) | Cod sursa (job #2954022) | Cod sursa (job #1746137) | Cod sursa (job #163786)
Cod sursa(job #163786)
var i,j,n,m,c1,c2:longint;
v:array[1..11000] of int64;
ok:boolean;
a,b,c:array[1..100100] of longint;
function cmmdc(a,b:longint):longint;
var r:longint;
begin
r:=a mod b;
while r>0 do
begin
a:=b;
b:=r;
r:=a mod b;
end;
cmmdc:=b;
end;
begin
assign(input,'oz.in');reset(input);
assign(output,'oz.out');rewrite(output);
readln(n,m);
for i:=1 to n do
v[i]:=1;
for i:=1 to m do
begin
readln(a[i],b[i],c[i]);
c1:=cmmdc(v[a[i]],c[i]);
c2:=cmmdc(v[b[i]],c[i]);
v[a[i]]:=(v[a[i]]*c[i]) div c1;
if a<>b then
v[b[i]]:=(v[b[i]]*c[i]) div c2;
end;
ok:=true;
for i:=1 to m do
begin
c1:=cmmdc(v[a[i]],v[b[i]]);
if c1<>c[i] then
begin
ok:=false;
break;
end;
// writeln(a,' ',b);
end;
if not ok then
write('-1')
else
for i:=1 to n do
write(v[i],' ');
writeln;
close(input);close(output);
end.