Submission #6421151
Source Code Expand
#include <bits/stdc++.h> using namespace std; #define repr(i,a,b) for(int i=a;i<b;i++) #define rep(i,n) for(int i=0;i<n;i++) int main(void) { int N; cin >> N; vector<int> p(N); int sum = 0; // memo rep(i, N) { cin >> p[i]; sum += p[i]; } vector<vector<bool> > memo(N + 1, vector<bool>(sum + 1, false)); memo[0][0] = true; repr(num, 1, N + 1) { rep(val, sum + 1) { if (val - p[num - 1] < 0) { memo[num][val] = memo[num - 1][val]; } else { memo[num][val] = memo[num - 1][val] || memo[num - 1][val - p[num - 1]]; } } } int ans = 0; rep(i, sum + 1) { if (memo[N][i])ans++; } cout << ans << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | A - コンテスト |
User | suakii |
Language | C++14 (GCC 5.4.1) |
Score | 2 |
Code Size | 700 Byte |
Status | AC |
Exec Time | 2 ms |
Memory | 256 KB |
Judge Result
Set Name | All | ||
---|---|---|---|
Score / Max Score | 2 / 2 | ||
Status |
|
Set Name | Test Cases |
---|---|
All | 00, 01, 02, 90, 91 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00 | AC | 1 ms | 256 KB |
01 | AC | 1 ms | 256 KB |
02 | AC | 2 ms | 256 KB |
90 | AC | 1 ms | 256 KB |
91 | AC | 1 ms | 256 KB |