Cod sursa(job #251186)

Utilizator razyelxrazyelx razyelx Data 2 februarie 2009 01:07:58
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream.h>
ifstream fin("combinari.in");
ofstream fout("combinari.out");
int n,m,st[30],as,ev;

void init(int k){
     if(k>0)
       st[k]=st[k-1];
     else
       st[k] = 0;
}
int succ(int k){
    if(st[k]<n-m+k){st[k]++;return 1;}
    return 0;
}
int valid(int k){
    if(st[k] <= st[k-1] && k>1)return 0;
    return 1;
}
int sol(int k){
    return k==m;
}
void tipar(){
     for(int i=1;i<=m;i++)
	fout<<st[i]<<" ";
     fout<<"\n";
}
void back(int k){
     init(k);
     while(succ(k))
	  if(valid(k))
	    if(sol(k))tipar();
	    else back(k+1);
}
int main(){
    fin>>n>>m;
    back(1);
    return 0;
}