Pagini recente » Rating Bogdan Protopopescu (BogdanPP) | Cod sursa (job #427866) | Cod sursa (job #998047) | Monitorul de evaluare | Cod sursa (job #744566)
Cod sursa(job #744566)
#include<fstream>
#include<vector>
using namespace std;
vector<int> st;
vector<bool> used;
ofstream out("combinari.out");
void backtracking(int N, int K)
{
if(st.size() == K + 1)
{
for(int i = 1; i < st.size(); ++i)
out << st[i] + 1 << " ";
out << "\n";
return;
}
for(int i = 0; i < N; ++i)
{
if(!used[i] && st.back() < i)
{
used[i] = true;
st.push_back(i);
backtracking(N, K);
st.pop_back();
used[i] = false;
}
}
}
int main()
{
int N, K;
ifstream in("combinari.in");
in >> N >> K;
in.close();
used.resize(N);
st.push_back(-1);
backtracking(N, K);
out.close();
return 0;
}