Pagini recente » Cod sursa (job #2059294) | Cod sursa (job #1521560) | Cod sursa (job #2892616) | Cod sursa (job #2385633) | Cod sursa (job #166607)
Cod sursa(job #166607)
var f,g:text;
v:array[1..10000]of int64;
a:array[1..100000]of record
i,j:integer;
d:longint;
end;
n:longint;
q:boolean;
d,x:int64;
l,i,j,m:longint;
function cmmdc(x,y:int64):int64;
var r:int64;
begin
repeat
r:=x mod y;
x:=y;
y:=r;
until r=0;
cmmdc:=y;
end;
begin
assign(f,'oz.in');
reset(f);
readln(f,n,m);
assign(g,'oz.out');
rewrite(g);
for i:=1 to n do
v[i]:=1;
q:=True;
for l:=1 to m do
begin
readln(f,i,j,d);
a[l].i:=i;
a[l].j:=j;
a[l].d:=d;
v[i]:=(v[i]*d) div cmmdc(v[i],d);
v[j]:=(v[j]*d) div cmmdc(v[j],d);
if (v[i]>2000000000) Or (v[j]>2000000000) then begin
q:=False;
break;
end;
end;
for i:=1 to m do
if cmmdc(v[a[i].i],v[a[i].j])<>a[i].d then begin q:=false; break;end;
if q then
begin
for i:=1 to n do
write(g,v[i],' ');
end
else write(g,'-1');
close(g);
end.