/ SeriousOJ /

Record Detail

Wrong Answer


  
# Status Time Cost Memory Cost
#1 Accepted 6ms 6.52 MiB
#2 Wrong Answer 106ms 6.699 MiB
#3 Wrong Answer 90ms 6.648 MiB
#4 Wrong Answer 89ms 6.52 MiB
#5 Wrong Answer 112ms 6.531 MiB
#6 Wrong Answer 92ms 6.52 MiB
#7 Wrong Answer 88ms 6.52 MiB
#8 Wrong Answer 80ms 6.52 MiB
#9 Wrong Answer 106ms 6.449 MiB
#10 Wrong Answer 74ms 6.641 MiB
#11 Wrong Answer 68ms 6.641 MiB
#12 Wrong Answer 87ms 6.52 MiB
#13 Wrong Answer 67ms 6.52 MiB
#14 Wrong Answer 48ms 6.648 MiB
#15 Wrong Answer 44ms 6.559 MiB
#16 Accepted 41ms 6.648 MiB
#17 Wrong Answer 31ms 6.52 MiB
#18 Wrong Answer 24ms 6.52 MiB
#19 Accepted 30ms 6.52 MiB
#20 Accepted 94ms 6.648 MiB

Code

#include<bits/stdc++.h>
#define ll long long
using namespace std;

int const N = 2e5 + 10;
ll ans;
vector<ll> a(N), idx(N), vis(N), dp(N);

void solve(int n){
  ll mn = 1e18;
  for (int i = 1; i < n + 10; i++){
    dp[i] = 1e18, idx[i] = i;
  }
  dp[1] = 0;
  idx[1] = 0;
  for (int i = 1; i <= n; i++){
    if (dp[i + 1] > dp[i] + a[i]){
      dp[i + 1] = dp[i] + a[i];
      idx[i + 1] = idx[i];
    }
    if (dp[i + 2] > dp[i] + a[i] + a[i + 1]){
      dp[i + 2] = dp[i] + a[i] + a[i + 1];
      idx[i + 2] = idx[i];
    }
    if (dp[i + 3] > dp[i] + a[i + 1] + a[i + 2]){
      dp[i + 3] = dp[i] + a[i + 1] + a[i + 2];
      idx[i + 3] = i;
    }
  }
  int j;
  for (int i = n + 1; i <= n + 3; i++){
    if (!vis[idx[i]] && dp[i] < mn){
      mn = dp[i], j = idx[i];
    }
  } 
  for (int i = j; i > 0; ){
    vis[i] = 1, a[i] = 0;
    i = idx[i];
  }
  // for(int i=1;i<=n;i++)cout<<a[i]<<" ";cout<<endl;
  if (mn < 1e18) ans += mn;
}
    

int main(){
  int t;
  cin >> t;
  while (t--){
    int n;
    cin >> n;
    for (int i = 1; i <= n; i++){
      cin >> a[i];
      vis[i] = 0;
    }
    vis[n + 1] = vis[n + 2] = vis[n + 3] = 0;
    ans = 0;
    solve(n);
    solve(n);
    solve(n);
    solve(n);
    solve(n);
    solve(n);
    cout << ans << endl;
  }
}

Information

Submit By
Type
Submission
Problem
P1087 Face the monsters
Language
C++17 (G++ 13.2.0)
Submit At
2024-09-06 18:47:17
Judged At
2024-09-06 18:47:17
Judged By
Score
20
Total Time
112ms
Peak Memory
6.699 MiB