Cod sursa(job #1111017)

Utilizator cmsstefan11Chiha Stefan cmsstefan11 Data 18 februarie 2014 16:24:41
Problema Combinari Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.82 kb
#include<iostream>
#include<fstream>
using namespace std;

ifstream fin("combinari.txt");
ofstream fout("combinari2.txt");
int x[100],n,p;
int valid(int k){
    for(int i=1;i<=k-1;i++)
        if(x[k]<=x[i])
            return 0;
    return 1;
}
int Prel_Sol (){
    for (int i=1;i<=p;i++)
        fout<<x[i]<<" ";
    fout<<'\n';
}
void BackTracking(){
    int k;
    for(k=1;k<=p;k++)
        x[k]=0;
    k=1;
    while(k){
        if(k==p+1){
            Prel_Sol();
            k=k-1;
        }else{
            if(x[k]<=n-1){
                x[k]=x[k]+1;
                if(valid(k))
                    k=k+1;
            }else{
                x[k]=0;
                k=k-1;
            }
        }
    }
}
int main()
{
    fin>>n>>p;
    fin.close();
    BackTracking();
    return 0;
}