| 提出番号 | 871 |
|---|---|
| 提出者 | data9824 |
| 言語 | C++ |
| 提出日時 | 2017-08-01 15:17:23 |
| 問題名 | (28)いつだって一位の男、olphe君 |
| 結果 | AC |
| 点数 | 100% |
| テストケース | 結果 | 得点 | 実行時間 | メモリ使用量 |
|---|---|---|---|---|
| 1 | AC | 100% | 2ms | 8000KB |
| 2 | AC | 100% | 2ms | 8000KB |
| 3 | AC | 100% | 2ms | 8336KB |
| 4 | AC | 100% | 14ms | 7424KB |
| 5 | AC | 100% | 2ms | 8336KB |
| 6 | AC | 100% | 2ms | 8320KB |
| 7 | AC | 100% | 2ms | 7760KB |
| 8 | AC | 100% | 2ms | 7952KB |
| 9 | AC | 100% | 2ms | 8336KB |
| 10 | AC | 100% | 2ms | 7424KB |
| 11 | AC | 100% | 2ms | 8336KB |
| 12 | AC | 100% | 2ms | 8304KB |
| 13 | AC | 100% | 2ms | 7696KB |
| 14 | AC | 100% | 2ms | 7776KB |
| 15 | AC | 100% | 2ms | 7712KB |
| 16 | AC | 100% | 2ms | 7776KB |
| 17 | AC | 100% | 2ms | 7808KB |
| 18 | AC | 100% | 2ms | 7504KB |
| 19 | AC | 100% | 2ms | 7712KB |
| 20 | AC | 100% | 2ms | 8000KB |
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
int n;
cin >> n;
vector<int> p(n);
for (int i = 0; i < n; ++i) {
cin >> p[i];
}
int s;
cin >> s;
bool possible[11][10001] = { false };
possible[0][0] = true;
for (int i = 0; i < n; ++i) {
for (int k = 0; k < 10001; ++k) {
if (possible[i][k]) {
possible[i + 1][k] = true;
possible[i + 1][k + p[i]] = true;
}
}
}
for (int i = max(1, s); i < 10001; ++i) {
if (possible[n][i]) {
cout << i << endl;
return 0;
}
}
return 0;
}