import java.util.Scanner;
public class DP5 {
static int N,k;
static int[]d;
static int[]p;
static int coin;
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
N=in.nextInt();
k=in.nextInt();
p=new int[N];
d=new int[k+1];
for(int i=0;i<N;i++) {
p[i]=in.nextInt();
}
for(int i=0;i<N;i++) {
coin=p[i]; d[coin]+=1;
for(int j=coin+1;j<=k;j++) {
if(d[j-coin]==0) continue;
else
d[j]=d[j-coin]*2;
}
}
in.close();
System.out.println(d[k]);
}
}
'코테 공부' 카테고리의 다른 글
[DP]숨바꼭질(백준 1697번), 자바(★☆) (0) | 2022.06.27 |
---|---|
[DP]여행(백준 2157번), 자바(ㅁㅁㅁ) (0) | 2022.06.22 |
[DP]문제#11.동전2(☆) (0) | 2022.05.11 |
[DP]문제#10. 1로 만들기 (0) | 2022.05.11 |
[DP]문제#9.제곱수의 합(☆) (0) | 2022.05.11 |