Cod sursa(job #1665869)

Utilizator pickleVictor Andrei pickle Data 27 martie 2016 13:56:07
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.75 kb
#include <algorithm>
#include <bitset>
#include <cmath>
#include <fstream>
#include <iostream>
#include <queue>
#include <stack>
#include <string.h>
#include <string>
#include <vector>

using namespace std;
typedef long long ll;
typedef pair<int, int> pii;
ifstream fin ("combinari.in");
ofstream fout ("combinari.out");
const int INF = 0x3f3f3f3f;
const int Nmax = 20;
int N, K;
char in[Nmax];

void print() {
  for (int i = 0; i < N; ++i)
    if (in[i])
      fout << i+1 << ' ';
  fout << '\n';
  return;
}

void back(int lvl, int cnt) {
  if (N - lvl < K - cnt)
    return;
  if (cnt == K) {
    print();
    return;
  }
  in[lvl] = 1;
  back(lvl+1, cnt+1);
  in[lvl] = 0;
  back(lvl+1, cnt);
  return;
}

int main() {
  fin >> N >> K;
  back(0, 0);

  return 0;
}