Cod sursa(job #1194894)

Utilizator proflaurianPanaete Adrian proflaurian Data 5 iunie 2014 10:21:16
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include<stdio.h>
int n,k,i,x[25],next_combination();
void read(),solve();
int main()
{
    read();
    solve();
    return 0;
}
void read()
{
    freopen("combinari.in","r",stdin);
    freopen("combinari.out","w",stdout);
    scanf("%d%d",&n,&k);
}
void solve()
{
    for(i=1;i<=k+1;i++)x[i]=i;
    for(;;)
    {
        for(i=1;i<k;i++)printf("%d ",x[i]);printf("%d\n",x[k]);
        if(!next_combination())return;
    }
}
int next_combination()
{
    int j;
    for(j=k;j>=1;j--)if(x[j]-n+k-j)break;
    x[j]++;
    for(i=j+1;i<=n;i++)x[i]=x[i-1]+1;
    return j;
}