Submission #298221

#TimeUsernameProblemLanguageResultExecution timeMemory
298221RezwanArefin01Candies (JOI18_candies)C++17
8 / 100
16 ms16384 KiB
#include <bits/stdc++.h>
using namespace std; 

typedef long long ll;
typedef pair<ll, int> ii; 


const int N = 2001; 

int n; 
ll a[N], dp[N][N]; 

int main() {
#ifdef LOCAL
  freopen("in", "r", stdin); 
#endif
  scanf("%d", &n); 
  for(int i = 1; i <= n; ++i) {
    scanf("%lld", &a[i]); 
  }
  
  dp[1][1] = a[1];
  dp[2][1] = max(a[1], a[2]); 

  for(int i = 3; i <= n; ++i) {
    for(int j = 1; j <= (i + 1) / 2; ++j) {
      dp[i][j] = dp[i - 1][j]; 
      dp[i][j] = max(dp[i][j], dp[i - 2][j - 1] + a[i]); 
    }
  }


  for(int i = 1; i <= (n + 1) / 2; ++i) {
    cout << dp[n][i] << endl; 
  }
  return 0;
}

Compilation message (stderr)

candies.cpp: In function 'int main()':
candies.cpp:17:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   17 |   scanf("%d", &n);
      |   ~~~~~^~~~~~~~~~
candies.cpp:19:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   19 |     scanf("%lld", &a[i]);
      |     ~~~~~^~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...