Pagini recente » Cod sursa (job #213040) | Cod sursa (job #453048) | Cod sursa (job #1668064) | Sedinta 10 Iulie 2011 | Cod sursa (job #1003706)
# include <fstream>
using namespace std;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
int st[10],n,k,K;
void Init()
{
st[k] = 0 ;
}
bool Am_Succesor()
{
if( st[k] < n )
{
st[k]++;
return true;
}
else return false;
}
bool E_Valid()
{
if( k > 1 && st[k] <= st[k-1] )
return false;
return true;
}
bool Solutie()
{ return k==K; }
void Tipar()
{
for( int i = 1 ; i <= K ; ++i )
fout << st[i] << ' ';
fout << '\n';
}
void back()
{
int AS;
k = 1;
Init();
while( k > 0 )
{
do {} while( (AS=Am_Succesor()) && !E_Valid() );
if( AS )
if( Solutie() ) Tipar();
else { ++k; Init(); }
else --k;
}
}
int main()
{
fin >> n;
fin >> K;
back();
fin.close();
fout.close();
return 0;
}