samuel21119

12987 - Let's build a hacker script SHORT

Nov 22nd, 2020
643
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. char strA[25], strB[25];
  5. int lenA, lenB;
  6. int haveAns = 0;
  7. int id[25];
  8. void find(int indexA, int indexB) {
  9.     int i, j;
  10.     if (indexA == lenA && indexB == lenB) {
  11.         int printed = 0;
  12.         for (i = j = 0; i < lenB; i++) {
  13.             if (id[j] == -1) {
  14.                 j++;
  15.                 continue;
  16.             }
  17.             if (printed) printf(" ");
  18.             while (j < lenA && id[j] == i) {
  19.                 printf("%c", strA[j]);
  20.                 printed = 1;
  21.                 j++;
  22.             }
  23.         }
  24.         printf("\n");
  25.         haveAns = 1;
  26.     }else if (indexA < lenA && indexB < lenB) {
  27.         if (strB[indexB] == '#') {
  28.             id[indexA] = indexB;
  29.             find(indexA + 1, indexB + 1);
  30.             find(indexA + 1, indexB);
  31.         }else {
  32.             id[indexA] = -1;
  33.             if (strA[indexA] == strB[indexB])
  34.                 find(indexA + 1, indexB + 1);
  35.         }
  36.     }
  37. }
  38. int main() {
  39.     scanf("%s %s", strA, strB);
  40.     lenA = strlen(strA);
  41.     lenB = strlen(strB);
  42.     find(0, 0);
  43.     if (!haveAns) {
  44.         printf("What the hack!?\n");
  45.     }
  46.     return 0;
  47. }
  48.  
RAW Paste Data