Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- int number = 0, k;
- char *buff;
- void nextStep(int step);
- void printBuff();
- int main() {
- printf("How many buffalos?");
- scanf("%d", &number);
- printf("How many k buffalos?");
- scanf("%d", &k);
- buff = (char *) malloc((number + k) * sizeof(char));
- memset(buff, 0, (number + k) * sizeof(char));
- nextStep(0);
- return 0;
- }
- void nextStep(int step) {
- if (step == number) {
- int j;
- for (j = 0; j < number; j++) {
- for (int i = 1; i < k+1; ++i) {
- if (buff[j] == 'D' && buff[j + i] == 'D')
- return;
- }
- }
- printBuff();
- } else {
- buff[step] = 'D';
- nextStep(step + 1);
- buff[step] = 'C';
- nextStep(step + 1);
- }
- }
- void printBuff() {
- printf("%s\n", buff);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement