Advertisement
fr1sk

backracking5.c

Jan 24th, 2016
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.60 KB | None | 0 0
  1. #include<stdio.h>
  2.  
  3. void backtrack(int a[], int i, int n, int p, int m, int pp, int mm)
  4. {
  5.   if(i==n && pp>=p && mm<=m)
  6.     {
  7.       for(int j=0; j<n; j++)
  8.         printf("%d",a[j]);
  9.       printf("\n");
  10.     }
  11.   else if (i<n)
  12.     {
  13.       if(mm<m)
  14.       {
  15.         a[i]=0;
  16.         backtrack(a,i+1,n,p,m,pp,mm+1);
  17.       }
  18.       //if(pp>=p)
  19.       //{
  20.         a[i]=1;
  21.         backtrack(a,i+1,n,p,m,pp+1,mm);
  22.       //}
  23.     }
  24.  
  25. }
  26.  
  27. int main()
  28. {
  29.   int i=0;
  30.   int a[10000];
  31.   int n;
  32.   int p,m,pp=0,mm=0;
  33.   scanf("%d%d",&p,&m);
  34.   scanf("%d", &n);
  35.  
  36.   backtrack(a,i,n,p,m,pp,mm);
  37.  
  38.  
  39.   return 0;
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement