とりあえず、コンパイル&実行は出来ていますが・・・何をしたいか解らないw
cpp
1
2#include <iostream>
3#include <vector>
4using namespace std;
5
6vector<int> ans;
7int dp[5010];
8int a[5010];
9
10int main()
11{
12 int n;
13 while (true) {
14 cin >> n;
15 cout << n << endl;
16 if (n == 0) {
17 break;
18 }
19 for (int i = 0; i < n; i++) {
20 dp[i] = 0;
21 }
22 for (int i = 0; i < n; i++) {
23 cin >> a[i];
24 }
25 for (int i = 0; i < n; i++) {
26 if (a[i] > 0) {
27 dp[i + 1] += dp[i] + a[i];
28 } else {
29 dp[i + 1] = dp[i];
30 }
31 }
32 ans.push_back(dp[n]);
33 }
34 for (int i = 0; i < int(ans.size()); i++) {
35 cout << ans[i] << endl;
36 }
37 return 0;
38}
39
usr~/test/cpp % c++ tcp.cpp
tcp.cpp:5:13: warning: no previous extern declaration for non-static variable 'ans'
[-Wmissing-variable-declarations]
vector<int> ans;
^
tcp.cpp:5:13: warning: declaration requires an exit-time destructor [-Wexit-time-destructors]
tcp.cpp:5:13: warning: declaration requires a global destructor [-Wglobal-constructors]
tcp.cpp:6:13: warning: no previous extern declaration for non-static variable 'dp'
[-Wmissing-variable-declarations]
int dp[5010];
^
tcp.cpp:7:13: warning: no previous extern declaration for non-static variable 'a'
[-Wmissing-variable-declarations]
int a[5010];
^
tcp.cpp:34:21: warning: implicit conversion changes signedness: 'int' to
'std::vector::size_type' (aka 'unsigned long') [-Wsign-conversion]
cout << ans[i] << endl;
~~~ ^
6 warnings generated.
usr~/test/cpp % ./a.out
3
3
1
2
3
0
0
6
usr~/test/cpp %