Cod sursa(job #2214925)

Utilizator Steff94Stefan Steff94 Data 20 iunie 2018 15:52:28
Problema Submultimi Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include<iostream>
#include<fstream>
using namespace std;

ifstream f("submultimi.in");
ofstream g("submultimi.out");

int N, *v;

int valid(int k) {
	for (int i = 1; i < k; i++)
		if ((v[k] == v[i]) || (v[k]<v[i]))
			return 0;
	return 1;
}

void afisare(int k) {
	for (int i = 1; i <= k; i++)
		g << v[i] << " ";
	g << "\n";
}

void backtr(int k) {
	for (int i = 1; i <= N; i++) {
		v[k] = i;
		if (valid(k)) {
			afisare(k);
			if (k < N) backtr(k + 1);
		}
	}
}

int main() {
	f >> N;
	v = new int[N + 1];
	backtr(1);
	f.close();
	g.close();
	return 0;
}