Cod sursa(job #590395)

Utilizator ukiandreaAndreea Lucau ukiandrea Data 17 mai 2011 11:49:42
Problema Submultimi Scor 100
Compilator c Status done
Runda Arhiva educationala Marime 0.75 kb
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <string.h>

void print_set(int *a, int len)
{
    int i;

    for (i = 1; i <= len; ++i)
        printf("%d ", a[i]);
    printf("\n");
}

void sets(int *a, int len, int k, int index)
{
    int i;

    if (index == (k + 1))
        print_set(a, k);
    else
    {
        for (i = a[index - 1] + 1; i <= len; ++i)
        {
            a[index] = i;
            sets(a, len, k, index + 1);
        }
    }
}

int main()
{
    int n = -1, k = 0, a[17];

    freopen("submultimi.in", "r", stdin);
    freopen("submultimi.out", "w", stdout);

    scanf("%d", &n);

    for (k = 1; k <= n; ++k)
    {
        memset(a, 0, n * sizeof(int));
        sets(a, n, k, 1);   
    }
        
    return 0;
}