Pagini recente » Cod sursa (job #1879378) | Cod sursa (job #3268561) | Cod sursa (job #2489903) | Cod sursa (job #2851688) | Cod sursa (job #237103)
Cod sursa(job #237103)
var v:array[1..100005] of int64;
i,j,n,k:longint;
ok,stop:boolean;
m,d,g,r,dd,a,b:int64;
f:text;
begin
assign(f,'oz.in');reset(f);
readln(f,n,m);
for i:=1 to n do v[i]:=1;
stop:=true;
ok:=true;
for k:=1 to m do
begin
readln(f,i,j,d);
dd:=d;
g:=v[i];
repeat
r:=g mod d;
g:=d;
d:=r;
until d=0;
v[i]:=v[i]*dd div g;
if v[i]>2000000000 then
begin
stop:=false;
break;
end;
g:=v[j];
d:=dd;
repeat
r:=g mod d;
g:=d;
d:=r;
until d=0;
v[j]:=v[j]*dd div g;
if v[j]>2000000000 then
begin
stop:=false;
break;
end;
a:=v[i]; b:=v[j];
repeat
r:=a mod b;
a:=b;
b:=r;
until b=0;
if r<>d then
begin
ok:=false;
break;
end;
end;
close(f);
if stop then
begin
assign(f,'oz.out');rewrite(f);
if ok then
begin
for i:=1 to n do write(f,v[i],' ');
writeln(f);
end
else writeln(f,'-1');
end
else writeln(f,-1);
close(f);
end.