Cod sursa(job #2014419)

Utilizator shantih1Alex S Hill shantih1 Data 23 august 2017 16:42:14
Problema Combinari Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.96 kb
#include <iostream>
#include <fstream>

using namespace std;
ifstream fin("combinari.in");
ofstream fout("combinari.out");

int n, i, j, nr, k, x, v[21], r[21];

int main () {
    
    fin >> n >> k;
    for (i = 1; i <= k; i++)
        v[i] = i;
    
    bool ok = true;
    while (ok == true)
    {
        
        for (i = 1; i <= k; i++)
            fout << v[i] << " ";    fout << "\n";
        
        x = 0;
        for (i = 2; i <= k; i++)
        {
            if (v[i] == n-k+i)
            {
                x = 1;
                if (v[i-1]+1 != v[i])   v[i-1]++;
                v[i] = v[i-1]+1;
                
                for (j = i+1; j <= k; j++)
                    v[j] = v[j-1]+1;
            }
        }
        
        
        i = k;
        while (v[i] == n-k+i && i >= 1)   i--;
            
        if (i >= 1 && x == 0) v[i]++;
        else if (i < 1)     ok = false;
    }
    
    for (i = n-k+1; i <= n; i++)  fout << i << " ";   fout << "\n";
}