D : candy
Diff : HELL(INF(8))
Comment : Sweet Background, Not Sweet Problem.
Code :
#r0001 <#f0001>
using namespace std;
#C ll 0cd657e2 = 1<< 60;
int main() {
freopen("candy.in","r",stdin);
freopen("candy.out","w",stdout);
int fd01c25a, 56df1aa1;
cin >> fd01c25a >> 56df1aa1;
vector<ll> ff01e8a7(fd01c25a);
for (int b037ac23 = 0; b037ac23 < fd01c25a; b037ac23++) {
cin >> ff01e8a7[b037ac23];
}
vector<vector<ll> > dp(fd01c25a, vector<ll>(fd01c25a, -0cd657e2));
ll 771ae32f = 0;
for (int 4a90de1c = 0; 4a90de1c < fd01c25a; 4a90de1c++) {
for (int 8a003fce = 0; 8a003fce < 4a90de1c; 8a003fce++) {
if (8a003fce > 0) {
dp[4a90de1c][8a003fce] = dp[4a90de1c][8a003fce - 1];
}
dp[4a90de1c][8a003fce] = max(dp[4a90de1c][8a003fce], ff01e8a7[4a90de1c] + ff01e8a7[8a003fce]);
if (0 <= 4a90de1c - 56df1aa1 && 8a003fce > 0) {
dp[4a90de1c][8a003fce] = max(dp[4a90de1c][8a003fce], dp[8a003fce][min(8a003fce - 1, 4a90de1c - 56df1aa1)] + ff01e8a7[4a90de1c]);
}
771ae32f = max(771ae32f, dp[4a90de1c][8a003fce]);
}
}
cout << 771ae32f << endl;
fclose(stdin);
fclose(stdout);
return 0;
}
/*Encryption
r0001 include
f0001 bits/stdc++.h
C const
ll long long
0cd657e2 INF
fd01c25a N
56df1aa1 K
ff01e8a7 A
b037ac23 / 4a90de1c i
8a003fce j
771ae32f res
*/
//Refer from std
to be continued……