Cod sursa(job #166414)

Utilizator kolapsysPostelnicu Dan Marian kolapsys Data 27 martie 2008 23:03:09
Problema Oz Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.12 kb
type vector=array[1..10000] of int64;
     matrice=array[1..100000,1..3] of int64;
var f,g:text;
    a:matrice;
    v:vector;
    i,n,m:longint;
    j:shortint;
{ ----- Functie CMMDC ----- }
function cmmdc(a,b:int64):int64;
var r:longint;
begin
        repeat
           r:=a mod b;
           a:=b;
           b:=r;
        until r=0;
        cmmdc:=a;
end;
{ ----- Sfarsit functie ----- }
{ ----- Functie CMMMC ----- }
function cmmmc(a,b:int64):int64;
begin
    cmmmc:=a*b div cmmdc(a,b);
end;
{ ----- Sfarsit functie ----- }
BEGIN
   assign(f,'oz.in'); reset(f);
   assign(g,'oz.out'); rewrite(g);
{ ----- Citirea matricei si initializarea vectorului ----- }
   readln(f,n,m);
   for i:=1 to n do v[i]:=1;
   for i:=1 to m do
        for j:=1 to 3 do
                begin
                read(f,a[i,j]);
                if j=3 then begin
                            v[a[i,1]]:=cmmmc(v[a[i,1]],a[i,3]);
                            v[a[i,2]]:=cmmmc(v[a[i,2]],a[i,3]);
                            end;
                end;
{ ----- Sfarsit citire matrice + vector ----- }
   close(f); close(g);
END.