Pagini recente » Cod sursa (job #1019319) | Cod sursa (job #1197101) | Cod sursa (job #428467) | Cod sursa (job #2737987) | Cod sursa (job #254651)
Cod sursa(job #254651)
#include<stdio.h>
int v[30],viz[30],nr,i,j,k,l,m,n,p,ok;
int main(){
FILE *f=fopen("planeta.in","r");
FILE *g=fopen("planeta.out","w");
fscanf(f,"%d%d",&n,&m);
k=1;v[1]=0;
while(k>0)
if(v[k]<n)
{v[k]++;ok=1;
if(viz[v[k]])ok=0;
for(i=1;i<(k-1)&&ok;i++)
for(j=i+1;j<k;j++)
if(v[j]>v[i]) { if(v[k]<v[i]) ok=0; break;}
if(ok){viz[v[k]]=1;
if(k==n)
{nr++;
if(nr==m){
for(i=1;i<=n;i++)
fprintf(g,"%d ",v[i]);
fclose(f);
fclose(g);
return 0;}
viz[v[k]]=0;
}
else
{k++;v[k]=0;}
}
}
else
{k--;viz[v[k]]=0;
}
fclose(f);
fclose(g);
return 0;}