AtCoder Beginner Contest 204 D - Cooking
tatyamさんの回答を自分で理解するために注記を記入。
DP?すごくきれい
#include <bits/stdc++.h> using namespace std; int main(){ int N; cin >> N; bitset<100001> dp; dp[0] = 1; int sum = 0; while(N--){ int T; cin >> T; sum += T; dp |= dp << T; } cout << dp._Find_next((sum - 1) / 2) << endl; }