Cod sursa(job #190251)

Utilizator radu_voroneanuVoroneanu Radu Stefan radu_voroneanu Data 21 mai 2008 11:50:51
Problema Triplete Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.84 kb
type relatie=record
     x,y:integer;
     end;

var a:array[1..4096,0..128] of longint;
    b:array[1..65536] of relatie;
    f,g:text;
    n,m,i,j,x,y,nr:longint;

begin

 assign(f,'triplete.in'); reset(f);
 assign(g,'triplete.out'); rewrite(g);


 read(f,n,m);
 for i:=1 to m do begin
        read(f,x,y);
        a[x,y shr 5]:=a[x,y shr 5] or (1 shl (y and 31));
        a[y,x shr 5]:=a[y,x shr 5] or (1 shl (x and 31));
        b[i].x:=x; b[i].y:=y;
 end;


 nr:=0;
 for i:=1 to m do
        for j:=0 to n shr 5 do begin
                x:=a[b[i].x,j] and a[b[i].y,j];
                if x<>0 then
                        repeat
                                x:=x and (x-1);
                                inc(nr);
                        until x=0;

        end;


 writeln(g,nr div 3);
 close(f); close(g);
end.