Cod sursa(job #652929)

Utilizator mening12001Andrei Geogescu mening12001 Data 26 decembrie 2011 19:33:12
Problema Subsir 2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include<iostream>
#include<fstream>
using namespace std;
ofstream h("kcons.out");
int n,v[2000],K,S=0,z=1;
void afis(int k)
{/*for(int i=1;i<=k;i++)
	cout<<v[i]<<" ";
	*/
	S=S+1;
//cout<<"\n";
}
int valid(int k)
{if(v[k]==v[k-1]+1)
z++;
else
z=1;
if(z>K)
return 0;
for(int i=1;i<k;i++)
if(v[k]==v[i])
return 0;
return 1;}
void back(int k)
{int i;
for(i=1;i<=n;i++)
{v[k]=i;
if(valid(k)==1)
if(k==n)
afis(k);
else
back(k+1);}}
int main()
{ifstream f("kcons.in");
long long p=1;
f>>n>>K;
if(K>1)
{v[0]=-1;
back(1);}
else
for(int i=1;i<=n;i++)
p=(p%30013)*i;
S=p;
h<<S%30013;
return 0;}