This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "fish.h"
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define INF 1e18//change to const int INF=1e18 if causing problem
const ll MOD=998244353;
const ll alt=1e10;
const ll inf=1e9+7;//Precalc is not a bad idea
#define pb push_back
#define pf push_front
#define mp make_pair
#define fi first
#define se second
#define mod(a) (a+inf)%inf
#define all(a) a.begin(),a.end()
#define rall(a) a.rbegin(),a.rend()
#define sz(a) a.size()
long long max_weights(int N, int M, std::vector<int> X, std::vector<int> Y, std::vector<int> W){
int n=N;
ll dp[n+1][2];
for(int i=0;i<=n;i++){
dp[i][0]=0,dp[i][1]=0;
}
for(int i=0;i<M;i++){
dp[X[i]+1][0]=W[i];
dp[X[i]+1][1]=W[i];
}
for(int i=3;i<=n;i++){
dp[i][0]+=max({dp[i-2][0],dp[i-2][1],dp[i-3][0],dp[i-3][1]});
dp[i][1]+=dp[i-1][0];
}
return max({dp[n][0],dp[n-1][0],dp[n-1][1]});
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |