Pagini recente » Cod sursa (job #3040299) | Cod sursa (job #2989963) | Cod sursa (job #1624971) | Cod sursa (job #77960) | Cod sursa (job #312566)
Cod sursa(job #312566)
program oz;
var f,g:text;
v:array[1..10000] of longint;
n,m,k,a,b,d,i,j,cmmdc,ok:longint;
label 1;
procedure euclid(a,b:longint; var cmmdc:longint);
var r,aux:longint;
begin
if a<b then begin aux:=a;a:=b;b:=aux;end;
r:=a mod b;
while r<>0 do
begin a:=b;b:=r; r:=a mod b; end;
cmmdc:=b;
end;
begin
assign(f,'oz.in');reset(f);
assign(g,'oz.out');rewrite(g);
readln(f,n,m);
for i:=1 to n do v[i]:=1;
for k:=1 to m do
begin
readln(f,i,j,d);
euclid(v[i],d,cmmdc);
v[i]:=v[i]*d div cmmdc;
euclid(v[j],d,cmmdc);
v[j]:=v[j]*d div cmmdc;
if (v[i]>2000000) or (v[j]>2000000) then begin writeln(g,-1);goto 1;end;
end;
close(f);
reset(f);
readln(f,n,m);
ok:=0;
for k:=1 to m do
begin
readln(f,i,j,d);
euclid(v[i],v[j],cmmdc);
if cmmdc<>d then begin ok:=1; break;end;
end;
if ok=0 then for i:=1 to n do write(g,v[i],' ')
else write(g,-1);
1:close (f);close(g);
end.