結果
問題 | No.2854 -1 Subsequence |
ユーザー |
![]() |
提出日時 | 2024-08-25 15:58:21 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,499 bytes |
コンパイル時間 | 1,957 ms |
コンパイル使用メモリ | 198,024 KB |
最終ジャッジ日時 | 2025-02-24 01:37:46 |
ジャッジサーバーID (参考情報) |
judge1 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 30 WA * 10 |
ソースコード
#include <bits/stdc++.h>using namespace std;typedef long long ll;typedef long double ld;typedef pair<ll,ll> PP;// #define MOD 1000000007#define MOD 998244353#define INF 2305843009213693951//#define INF 810114514#define PI 3.141592653589#define setdouble setprecision#define REP(i,n) for(ll i=0;i<(n);++i)#define OREP(i,n) for(ll i=1;i<=(n);++i)#define RREP(i,n) for(ll i=(n)-1;i>=0;--i)#define ORREP(i,n) for(ll i=(n);i>=1;--i)#define rep(i,a,b) for(ll i=(a);i<=(b);++i)#define ALL(v) (v).begin(), (v).end()#define GOODBYE do { cout << "-1" << endl; return 0; } while (false)#define MM <<" "<<#define Endl endl#define debug true#define debug2 falseint main(void){//cin.tie(nullptr);//ios::sync_with_stdio(false);ll N;cin >> N;vector<ll> A(N);REP(i,N){cin >> A[i];}// dp[i][j] := iまで見た、現在のモードがjのときの最大スコアvector<vector<ll>> dp(N+1,vector<ll>(2,-INF));dp[0][1] = 0;REP(i,N){// 無視するdp[i+1][0] = max(dp[i+1][0],dp[i][0]);dp[i+1][1] = max(dp[i+1][1],dp[i][1]);// 遷移するdp[i+1][0] = max(dp[i+1][0],dp[i][1]-A[i]);dp[i+1][1] = max(dp[i+1][1],dp[i][0]+A[i]);}// REP(j,2){// REP(i,N+1){// cout << dp[i][j] << " ";// }cout << endl;// }cout << endl;ll Ans = max(dp[N][0],dp[N][1]);cout << Ans << endl;return 0;}