Submission #1231080

#TimeUsernameProblemLanguageResultExecution timeMemory
1231080banganNile (IOI24_nile)C++20
13 / 100
19 ms3400 KiB
#include "nile.h" #include <bits/stdc++.h> using namespace std; #define ll long long std::vector<long long> calculate_costs(std::vector<int> W, std::vector<int> A, std::vector<int> B, std::vector<int> E) { int N = W.size(); int Q = E.size(); ll sum = 0; for (int i=0; i<N; i++) sum += B[i]; ll ans = LLONG_MAX; if (N%2 == 0) ans = sum; else for (int i=0; i<N; i++) ans = min(ans, sum - B[i] + A[i]); vector<ll> dp(N); dp[0] = A[0]; if (1<N) dp[1] = B[0] + B[1]; for (int i=2; i<N; i++) dp[i] = min(dp[i-1] + A[i], dp[i-2] + B[i] + B[i-1]); vector<ll> ret(Q); for (int i=0; i<Q; i++) { if (E[i]==1) ret[i] = dp[N-1]; else ret[i] = ans; } return ret; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...