Guest User

Untitled

a guest
Nov 24th, 2017
67
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 <string.h>
  3. #include <math.h>
  4. #include <stdlib.h>
  5. #include <ctype.h>
  6.  
  7. int maxind, polje[50];
  8.  
  9. int fun (int suma, int ind){
  10.     int min, i, tmp;
  11.     if (ind >= maxind || suma - polje[ind] < 0)
  12.         return 100000;
  13.     if (suma - polje[ind] == 0)
  14.         return 1;
  15.     min = 100000;
  16.     for (i = ind + 1; i < maxind; i++){
  17.         tmp = 1 + fun (suma - polje[ind], i);
  18.         if (tmp < min) min = tmp;
  19.     }
  20.     return min;  
  21. }
  22.  
  23. int main()
  24. {
  25.     int t, i, m, n, j;
  26.     scanf ("%d", &t);
  27.     for (i = 0; i < t; i++){
  28.         maxind = 1;
  29.         scanf ("%d %d", &n, &m);
  30.         for (j = 0; j < n; j++){
  31.             scanf ("%d", &polje[maxind]);
  32.             if (polje[maxind] <= m)
  33.                 maxind++;
  34.         }
  35.         if (fun (m, 0) < 100000)
  36.             printf ("Yes\n");
  37.         else
  38.             printf ("No\n");
  39.     }
  40.     return 0;
  41. }
Add Comment
Please, Sign In to add comment