Cod sursa(job #25322)

Utilizator valkyriaValkyria Dark valkyria Data 4 martie 2007 11:59:20
Problema Kperm Scor 0
Compilator fpc Status done
Runda preONI 2007, Runda 3, Clasele 11-12 Marime 0.7 kb
Program perm;
var f,g:text;
	n,k,nr:longint;
	st:array[1..5000] of longint;
	s:array[1..5000]of 0..1;

Procedure verifica;
var i,j,s:longint;ok:boolean;
begin
	ok:=true;
	for i:= 1 to n-k+1 do
	begin s:=0;
	for j:=i to i+k-1 do
	s:=s+st[j];
	if s mod k <>0 then begin ok:=false; break; break; end;
	end;
	if ok then nr:=nr+1;
end;

Procedure bkt(p:longint);
var pval:longint;
begin
	for pval:=1 to n do 
	if s[pval]=0 then
	begin
		s[pval]:=1;
		st[p]:=pval;
		if p=n then verifica
		else bkt(P+1);
		s[pval]:=0;
	end;
end;

var i:longint;

begin
	assign(f,'kperm.in'); reset(f);
	assign(g,'kperm.out'); rewrite(g);
	readln(f,n,k);
	nr:=0;
	for i:=1 to n do s[i]:=0;
	bkt(1);
	writeln(g,nr);
	close(f);
	close(g);
end.