Advertisement
Guest User

Untitled

a guest
Mar 20th, 2018
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.89 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. int number = 0, k;
  6. char *buff;
  7.  
  8. void nextStep(int step);
  9.  
  10. void printBuff();
  11.  
  12. int main() {
  13.     printf("How many buffalos?");
  14.     scanf("%d", &number);
  15.     printf("How many k buffalos?");
  16.     scanf("%d", &k);
  17.     buff = (char *) malloc((number + k) * sizeof(char));
  18.     memset(buff, 0, (number + k) * sizeof(char));
  19.     nextStep(0);
  20.     return 0;
  21. }
  22.  
  23. void nextStep(int step) {
  24.  
  25.     if (step == number) {
  26.         int j;
  27.         for (j = 0; j < number; j++) {
  28.             for (int i = 1; i < k+1; ++i) {
  29.                 if (buff[j] == 'D' && buff[j + i] == 'D')
  30.                     return;
  31.             }
  32.         }
  33.         printBuff();
  34.     } else {
  35.         buff[step] = 'D';
  36.         nextStep(step + 1);
  37.         buff[step] = 'C';
  38.         nextStep(step + 1);
  39.     }
  40. }
  41.  
  42. void printBuff() {
  43.     printf("%s\n", buff);
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement