Cod sursa(job #248980)
Utilizator | deaconu ioan crysys | Data | 27 ianuarie 2009 10:39:38 |
---|---|---|---|
Problema | Combinari | Scor | 80 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.47 kb |
#include<fstream.h>
ifstream f("combinari.in");
ofstream g("combinari.out");
int n,m,i,st[100],nr=0;
int valid(int k)
{ int ok=1;
for(i=1;i<k && ok;i++)
if(st[k]==st[i] || st[i]>=st[k])ok=0;
return ok;
}
void back(int k)
{int j;
if(k==m+1) {
for(i=1;i<=m;i++)
g<<st[i]<<" ";
g<<"\n";
}
else
{
for(j=1;j<=n;j++)
{
st[k]=j;
if(valid(k)) back(k+1);
}
}
}
int main()
{
f>>n>>m;
back(1);
return 0;
}