Pagini recente » Cod sursa (job #3128740) | Cod sursa (job #2816503) | Cod sursa (job #2280896) | Cod sursa (job #2018446) | Cod sursa (job #163674)
Cod sursa(job #163674)
var v,e,h,t:array[1..100010]of int64;
r,n,k,a,b,d,q,w,m,f:int64;
i,j:longint;
f1:text;
begin
assign(f1,'oz.in');
reset(f1);
read(f1,n,m);
f:=0;
for i:=1 to n do
v[i]:=1;
for i:=1 to m do
begin
read(f1,a,b,d);
e[i]:=a;
h[i]:=b;
t[i]:=d;
q:=v[a];
w:=d;
if w>q then begin q:=d;
w:=v[a];
end;
while q mod w>0 do
begin
r:=q mod w;
q:=w;
w:=r;
end;
v[a]:=v[a]*d div w;
q:=v[b];
w:=d;
if w>q then begin q:=d;
w:=v[b];
end;
while q mod w>0 do
begin
r:=q mod w;
q:=w;
w:=r;
end;
v[b]:=v[b]*d div w;
end;
for i:=1 to m do
begin
q:=v[e[i]];
w:=v[h[i]];
if w>q then begin q:=v[h[i]];
w:=v[e[i]];
end;
while q mod w>0 do
begin
r:=q mod w;
q:=w;
w:=r;
end;
if w<>t[i] then f:=1;
end;
close(f1);
assign(f1,'oz.out');
rewrite(f1);
if f=0 then begin for i:=1 to n do
write(f1,v[i],' ');
writeln(f1);
end
else writeln(f1,-1);
close(f1);
end.