Advertisement
imbear

add

May 24th, 2013
288
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.42 KB | None | 0 0
  1. int A,B,C,D,E;
  2. int x1, x2, x3, x4;//1 = +; 2 = -; 3 = *; 4 = /;
  3. int Z = 8; //Result;
  4. for (A=1; A<=9; A++) {
  5.   for (B=1; B<=9; B++) {
  6.     for (C=1; C<=9; C++) {
  7.       for (D=1; D<=9; D++) {
  8.         for (E=1; E<=9; E++) {
  9.           for (x1=1; x1<=4; x1++) {
  10.             for (x2=1; x2<=4; x2++) {
  11.               for (x3=1; x3<=4; x3++) {
  12.                 for (x4=1; x4<=4; x4++) {
  13.                     int cc [9] = {A,x1,B,x2,C,x3,D,x4,E};
  14.                     r = check(cc, 9);
  15.                     if (r == Z) {
  16.                         printf("you got it, %d, %d, %d, %d, %d, %d, %d, %d, %d", A,x1,B,x2,C,x3,D,x4,E);
  17.                     }
  18.                 }
  19.               }
  20.             }
  21.           }
  22.         }
  23.       }
  24.     }
  25.   }
  26. }
  27.  
  28. int check(int a[], int l)
  29. {
  30.     int b[l];
  31.     for (int i = 0; i< l; i++) {
  32.         b[i] = -1;
  33.     }
  34.     int c = 0;
  35.     int cnt = 0;
  36.     for (int i = 1; i < 8; i+= 2) {
  37.         switch(i)
  38.         {
  39.             case 1:
  40.             case 2:
  41.                 if (b[c] < 0)
  42.                     b[c] = a[i-1];
  43.                 b[c+1] = a[i];
  44.                 //b[c+2] = a[i+1];
  45.                 c+= 2;
  46.                 break;
  47.             case 3:
  48.                 b[c] = a[i-1] * a[i+1];
  49.                 cnt++;
  50.                 break;
  51.             case 4:
  52.                 b[c] = b[c] / a[i+1];
  53.                 cnt++;
  54.                 break;
  55.         }
  56.     }
  57.     if (cnt==0) {
  58.         int r = 0;
  59.         for (int i = 0; i < c; i++) {
  60.             switch (i)
  61.             {
  62.                 case 1:
  63.                     b[i+1] += b[i-1];
  64.                     break;
  65.                 case 2:
  66.                     b[i+1] -= b[i-1];
  67.                     break;
  68.             }
  69.             r = b[i+1];
  70.         }
  71.         return r;
  72.     } else {
  73.         return check(b, c);
  74.     }  
  75. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement