Pagini recente » Cod sursa (job #2055565) | Cod sursa (job #1026036) | Cod sursa (job #1364378) | Cod sursa (job #1550434) | Cod sursa (job #2093879)
#include <bits/stdc++.h>
#define dim 100
using namespace std;
ifstream f("combinari.in");
ofstream g("combinari.out");
int comb;
int sol[dim],n,nr=0;
int solutie(int k)
{
return(k-1==comb);
}
void init(int k)
{
sol[k]=0;
}
void tipar()
{
for(int i=1;i<=comb;i++){
g<<sol[i]<<" ";
}
g<<'\n';
}
int valid(int k)
{
for(int i=1;i<=k-1;i++){
if(sol[i]==sol[k] || sol[i]>sol[k])
return 0;
}
return 1;
}
int succesor(int k)
{
if(sol[k]<n){
sol[k]++;
return 1;
}
return 0;
}
void citire()
{
f>>n;
f>>comb;
}
void backtr(int k)
{
if (solutie(k))
tipar();
else{
init(k);
while(succesor(k)){
if(valid(k)){
backtr(k+1);
}
}
}
}
int main()
{
citire(); backtr(1);
return 0;
}