Cod sursa(job #874874)

Utilizator RusuDRusu Daniel RusuD Data 9 februarie 2013 13:23:48
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>
using namespace std;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
int v[20],aj[20],j,k,n,viz[20],h[20],ok;
int back(int sol[20],int pos)
 {int i;
  if(pos==k+1)
   {if(ok==0)
    {
    for(i=1;i<=k;i++)
     fout<<sol[i]<<' ';
    fout<<'\n';
    if(sol[1]==h[1] &&sol[k]==h[k]) ok=1;
    }
   }
  else
   {if(ok==0)
    {
    for(i=sol[pos-1];i<=n;i++)
     if(viz[i]==0)
      {viz[i]=1;
       sol[pos]=i;
       back(sol,pos+1);
       viz[i]=0;
      }
   }
   }
 }
int main()
{fin>>n>>k;
 for(j=k;j>=1;j--)
  h[j]=n-(k-j);
 back(v,0);
 fin.close();
 fout.close();
 return 0;
}