Submission #97315
Source Code Expand
#include <vector> #include <list> #include <map> #include <set> #include <deque> #include <stack> #include <algorithm> #include <numeric> #include <sstream> #include <iostream> #include <cstdio> #include <cmath> #include <cstdlib> #include <cctype> #include <string> #include <cstring> using namespace std; inline int toInt(string s) {int v; istringstream sin(s);sin>>v;return v;} template<class T> inline string toString(T x) {ostringstream sout;sout<<x;return sout.str();} #define FOR(i,a,b) for(int i=(a);i<(b);++i) #define REP(i,n) FOR(i,0,n) #define dump(x) cerr << #x << " = " << (x) << endl; #define debug(x) cerr << #x << " = " << (x) << " (L" << __LINE__ << ")" << " " << __FILE__ << endl; int main() { int n; int p[110]; int dp[101][10200]; cin >> n; REP(i,n){ cin >> p[i]; } REP(i,n+1)REP(j,10200)dp[i][j]=0; dp[0][0] = 1; REP(i,n){ REP(j,10000){ dp[i+1][j+p[i]] = max(dp[i][j],dp[i+1][j+p[i]]); dp[i+1][j] = max(dp[i][j],dp[i+1][j]); } } int count = 0; REP(i,10100){ if(dp[n][i]==1){ count++; } } cout << count << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | A - コンテスト |
User | trpkt1001 |
Language | C++ (G++ 4.6.4) |
Score | 2 |
Code Size | 1177 Byte |
Status | AC |
Exec Time | 29 ms |
Memory | 4660 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 | 22 ms | 1164 KB |
01 | AC | 24 ms | 2820 KB |
02 | AC | 29 ms | 4660 KB |
90 | AC | 21 ms | 896 KB |
91 | AC | 19 ms | 1156 KB |