Cod sursa(job #1155669)
Utilizator | Cozma Tudor tudi98 | Data | 27 martie 2014 08:33:59 |
---|---|---|---|
Problema | Combinari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.57 kb |
#include <fstream>
using namespace std;
ifstream f("combinari.in");
ofstream g("combinari.out");
int n,p,a[20];
int valid(int k){
int i;
for(i=1;i<k;i++)
if(a[i]==a[k]) return 0;
return 1;
}
inline void print(){
int i;
for(i=1;i<=p;i++) g<<a[i]<<" ";
g<<"\n";
}
void back(int k){
int i;
if(k==p+1) print();
else{
for(i=a[k-1];i<=n;i++){
a[k]=i;
if(valid(k)) back(k+1);
}
}
}
int main(){
f>>n>>p;
a[0]=1;
back(1);
}