Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <stdio.h>#include <string.h>#include <iostream>#include <algorithm>#include <vector>#include <queue>#include <set>#include <map>#include <string>#include <math.h>#include <stdlib.h>using namespace std;int N,X,a[30],t,m=1e5;void dfs(int i){if(t>=X&&t<m)m=t;if(t>=m)return;if(i>N)return;t=t+a[i];dfs(i+1);t=t-a[i];dfs(i+1);}int main(){int i,j,k;scanf("%d%d",&N,&X);for(i=1;i<=N;i++)scanf("%d",a+i);t=0;