Pagini recente » Cod sursa (job #2062100) | Cod sursa (job #2433130) | Cod sursa (job #2693599) | Cod sursa (job #1440980) | Cod sursa (job #11452)
Cod sursa(job #11452)
program triplete;
const
fin='triplete.in';
fout='triplete.out';
nmax=4096;
type
muchie=record
x,y:integer;
end;
var
m:array[1..65536] of muchie;
adj:array[1..nmax,0..512] of byte;
nm,n,i,j,k,x,y:longint;
num_tr:longint;
procedure adauga(x,y:longint);
begin
adj[x,y shr 3]:=adj[x,y shr 3] or (1 shl (y and 7));
end;
function num_ones(x:integer):byte;
var
num:integer;
begin
num:=0;
while x<>0 do
begin
inc(num);
x:=x and (x-1);
end;
num_ones:=num;
end;
begin
assign(input,fin);
reset(input);
readln(n,nm);
for i:=1 to nm do
begin
readln(x,y);
m[i].x:=x;m[i].y:=y;
adauga(x,y);
adauga(y,x);
end;
close(input);
assign(output,fout);
rewrite(output);
num_tr:=0;
for i:=1 to nm do
begin
for j:=0 to 512 do
inc(num_tr,num_ones(adj[m[i].x,j] and adj[m[i].y,j]))
end;
writeln(num_tr div 3);
close(output);
end.