Cod sursa(job #1728556)
Utilizator | Victor Manoliu victor.manoliu15 | Data | 13 iulie 2016 10:35:31 |
---|---|---|---|
Problema | Combinari | Scor | 80 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.83 kb |
#include<fstream>
using namespace std;
ifstream f("combinari.in");
ofstream g("combinari.out");
int s[100],n,k,p;
void afis()
{
for(int i=1; i<=p; i++)
{
g<<s[i]<<" ";
}
g<<endl;
}
int valid()
{
if(k>1)
if(s[k]<=s[k-1])
return 0;
return 1;
}
void bkt()
{
k=1;
while(k>0)
{
if(s[k]<n)
{
s[k]=s[k]+1;
if(valid())
{
if(k==p)
{
afis();
}
else
{
k++;
}
}
}
else
{
s[k]=0;
k--;
}
}
}
int main()
{
f>>n>>p;
bkt();
f.close();
g.close();
return 0;
}