Pagini recente » Cod sursa (job #2779132) | Cod sursa (job #740220) | Cod sursa (job #1209221) | Cod sursa (job #2511855) | Cod sursa (job #11458)
Cod sursa(job #11458)
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(m[i].x,m[i].y);
adauga(m[i].x,m[i].y);
adauga(m[i].y,m[i].x);
end;
close(input);
assign(output,fout);
rewrite(output);
num_tr:=0;
for i:=1 to nm do
begin
for j:=0 to n shr 3 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.