Pagini recente » Cod sursa (job #2265752) | Cod sursa (job #609168) | Cod sursa (job #2448734) | Cod sursa (job #746127) | Cod sursa (job #12655)
Cod sursa(job #12655)
const biti=16;
var fi,fo:text;
m,i,bla:longint;
n,j,x,y:integer;
rez:int64;
xx,yy:array[0..1 shl biti]of word;
nr:array[0..1 shl biti]of byte;
mat:array[0..4096,0..4096 div biti]of longint;
begin
assign(fi,'triplete.in'); reset(fi);
assign(fo,'triplete.out'); rewrite(fo);
readln(fi,n,m);
for i:=1 to m do
begin
readln(fi,x,y);
mat[x,y div 30]:=mat[x,y div 30]or (1 shl(y mod 30));
mat[y,x div 30]:=mat[y,x div 30]or (1 shl(x mod 30));
xx[i]:=x; yy[i]:=y;
end;
for i:=1 to 66000 do
nr[i]:=nr[i shr 1]+i and 1;
rez:=0;
for i:=1 to m do
for j:=0 to n div biti do
begin
bla:=mat[xx[i],j]and mat[yy[i],j];
inc(rez,nr[bla shr 15]+nr[bla and(1 shl 15-1)]);
end;
writeln(fo,rez div 3);
close(fo);
end.