Cod sursa(job #164524)

Utilizator LegolasCazacu Iulian Legolas Data 24 martie 2008 13:08:59
Problema Oz Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.88 kb
var f,g:text;
n,m,t,z,r,x,y,d,i:longint;
a:array[1..10000] of qword;
h:boolean;
 begin
 assign(f,'oz.in');reset(f);
 assign(g,'oz.out');rewrite(g);
 read(f,n,m);
 for i:=1 to n do
  a[i]:=1;
 for i:=1 to m do
  begin
   read(f,x,y,d);
   t:=a[x];
   z:=d;
   r:=t mod z;
   while r>0 do
    begin
     t:=z;
     z:=r;
     r:=t mod z;
    end;
   a[x]:=a[x]*(d div z);
   t:=a[y];
   z:=d;
   r:=t mod z;
   while r>0 do
    begin
     t:=z;
     z:=r;
     r:=t mod z;
    end;
   a[y]:=a[y]*(d div z);
  end;
 close(f);
 reset(f);
 read(f,n,m);
 h:=true;
 for i:=1 to m do
  begin
   read(f,x,y,d);
   t:=a[x];
   z:=a[y];
   r:=t mod z;
   while r>0 do
    begin
     t:=z;
     z:=r;
     r:=t mod z;
    end;
   if z<>d then h:=false;
  end;
 if h then
 for i:=1 to n do
  write(g,a[i],' ')
  else write(g,-1);
 close(f);
 close(g);
 end.