Cod sursa(job #3329226)

Utilizator DariusJohnDarius Dumitrescu DariusJohn Data 12 decembrie 2025 12:43:00
Problema Combinari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.64 kb
#include <bits/stdc++.h>
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
vector<int> perm;
int n, k;

bool valid() {
  for (int i = 0; i < perm.size() - 1; i++)
    if (perm[i] >= perm.back())
      return 0;
  return 1;
}

void print() {
  for (int i = 0; i < perm.size(); i++)
    fout << perm[i] << " ";
  fout << "\n";
}

void backtracking() {
  for (int i = 1; i <= n; i++) {
    perm.push_back(i);
    if (valid()) {
      if (perm.size() == k)
        print();
      else
        backtracking();
    }
    perm.pop_back();
  }
}

int main() {
  fin >> n >> k;
  backtracking();
}