Cod sursa(job #302903)
Utilizator | Data | 9 aprilie 2009 13:16:03 | |
---|---|---|---|
Problema | Combinari | Scor | 90 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.5 kb |
#include<fstream.h>
ifstream intrare("combinari.in");
ofstream iesire("combinari.out");
int sol[19],n,k;
void afisare()
{
for(int i=1;i<=k;i++)
iesire<<sol[i]<<" ";
iesire<<"\n";
}
int verificare(int s)
{
for(int i=1;i<s;i++)
{
if(sol[i]>=sol[s]) return 0;
}
return 1;
}
void back(int s)
{
if(s==k+1) afisare();
else
{
sol[s]=1;
while(sol[s]<=n)
{
if(verificare(s)==1) back(s+1);
sol[s]++;
}
}
}
int main()
{
intrare>>n>>k;
back(1);
return 0;
}