ソースコード
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
#include <queue>
#include <stack>
#include <map>
#include <algorithm>
#include <sstream>
#include <cmath>
#include <set>
#include <iomanip>
#include <deque>
#include <stdio.h>
#include <random>
using namespace std;
#define REP(i,n) for(int (i)=0;(i)<(int)(n);(i)++)
#define RREP(i,n) for(int (i)=(int)(n)-1;i>=0;i--)
#define REMOVE(Itr,n) (Itr).erase(remove((Itr).begin(),(Itr).end(),n),(Itr).end())
typedef long long ll;
int main() {
int N; cin >> N;
vector<int> P(N);
REP(i,N) cin >> P[i];
int S; cin >> S;
int ans = 1e9;
REP(i,(1<<N)) {
int sum = 0;
REP(j,N) {
if((i>>j)&1) sum += P[j];
}
if(sum >= S && sum != 0) ans = min(ans,sum);
}
cout << ans << endl;
return 0;
}