fork download
  1. import java.io.*;
  2. import java.util.*;
  3. public class Main{
  4. public static void main(String[] args) throws Exception{
  5. int n;
  6. n=Integer.parseInt(s.readLine());
  7. for(int t=0;t<n;t++){
  8. String[] m;
  9. m=s.readLine().split(" ");
  10. int value=Integer.valueOf(m[1]);
  11. int[] v=new int[Integer.valueOf(m[0])];
  12. if(Integer.valueOf(m[0])>20)
  13. {
  14. break;
  15. }
  16. for(int i=0;i<Integer.valueOf(m[0]);i++){
  17. int cv =Integer.parseInt(s.readLine());
  18. if(cv>1000){
  19. break;
  20. }else{
  21. v[i]=cv;
  22. }
  23. }
  24. Arrays.sort(v);
  25.  
  26.  
  27. boolean ca=false;
  28.  
  29. for(int i=v.length-1;i>=0;i--)
  30. { int sum=v[i];
  31. for(int j=v.length-1;j>=0;j--){
  32. // System.out.println(i+" "+j+" "+sum);
  33. if(j!=i && sum < value && sum+v[j]<=value){
  34. sum=sum+v[j];
  35. }
  36.  
  37. if(sum==value){
  38. ca=true;
  39. break;
  40. }
  41. }
  42. if(sum==value){
  43. ca=true;
  44. break;
  45. }
  46.  
  47.  
  48. } if(ca==true){System.out.println("Yes");}else{System.out.println("No");} }}}
Success #stdin #stdout 0.07s 380160KB
stdin
1
7 112
14
21
33
40
54
65
76
stdout
No