Pagini recente » Cod sursa (job #2251049) | Cod sursa (job #2860755) | Cod sursa (job #899658) | Cod sursa (job #1910927) | Cod sursa (job #462999)
Cod sursa(job #462999)
program triplete;
var f, g:text;
poz, poza, pozb, x, nm,rez, i, n, m, a, b, j, k, nr:longint;
v:array[0..4096,0..65] of int64;
procedure citire;
begin
readln(f,n,m);
for i:=1 to m do
begin
read(f,a,b);
poza:=b div 64;
poz:=b mod 64+1;
v[a,poza]:=v[a,poza] or 1 shl (poz-1);
pozb:=a div 64;
poz:=a mod 64+1;
v[b,pozb]:=v[b,pozb] or 1 shl (poz-1);
end;
end;
procedure numarare_biti(a:int64);
begin
nm:=0;
while a>0 do
begin
nm:=nm+1;
a:=a and (a-1);
end;
rez:=rez+nm;
end;
procedure rezolvare;
begin
for i:=1 to n do
for j:=i+1 to n do
begin
poza:=j div 64;
poz:=j mod 64+1;
if v[i,poza] and (1 shl (poz-1))>0 then
for k:=0 to 64 do
begin
x:=v[i,k] and v[j,k];
numarare_biti(x);
end;
end;
writeln(g,rez div 3);
end;
begin
assign(f,'triplete.in'); reset(f);
assign(g,'triplete.out'); rewrite(g);
citire;
rezolvare;
close(f);
close(g);
end.