Pagini recente » Cod sursa (job #3004442) | Cod sursa (job #2592696) | Cod sursa (job #2975038) | Cod sursa (job #1439911) | Cod sursa (job #652929)
Cod sursa(job #652929)
#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;}