网站优化怎么做效果才好,wordpress 付费会员分类,郑州高端网站定制,手机中国建设银行网站题意
给定一个数列#xff0c;随机从该数列里删除一个数#xff0c;求该数列的的相邻之间的绝对值的最大值的和。
思路
两个数列来分别维护i位前面的相邻的绝对值的最大以及i后面的最大#xff0c;枚举每一个可能删除的数#xff0c;然后分别从左右和要删除的这个空档里…题意
给定一个数列随机从该数列里删除一个数求该数列的的相邻之间的绝对值的最大值的和。
思路
两个数列来分别维护i位前面的相邻的绝对值的最大以及i后面的最大枚举每一个可能删除的数然后分别从左右和要删除的这个空档里娶一个最大的值。
code
#include iostream
#include cstdio
#include cmath
#include algorithm
#include cstring
#include sstream
#include string
#include vector
#include list
#include queue
#include stack
#include map
#include set
#include bitsetusing namespace std;typedef long long ll;
typedef unsigned long long ull;
typedef long double ld;const int INF0x3fffffff;
const int inf-INF;
const int N100005;
const int M2005;
const int mod1000000007;
const double piacos(-1.0);#define cls(x,c) memset(x,c,sizeof(x))
#define cpy(x,a) memcpy(x,a,sizeof(a))
#define ft(i,s,n) for (int is;in;i)
#define frt(i,s,n) for (int is;in;i--)
#define lson l,m,rt1
#define rson m1,r,rt1|1
#define lrt rt1
#define rrt rt1|1
#define middle int m(rl)1
#define lowbit(x) (x-x)
#define pii pairint,int
#define mk make_pair
#define IN freopen(in.txt,r,stdin)
#define OUT freopen(out.txt,w,stdout)int read() {char ch;while (ch getchar(), !isdigit(ch));int res ch - 0;while (ch getchar(), isdigit(ch))res res * 10 ch - 0;return res;
}
//密封线ll v[N],s1[N],s2[N];
int main()
{int Tread();ft(ca,1,T){int nread();memset(s1,0,sizeof(s1));memset(s2,0,sizeof(s2));ft(i,1,n){scanf(%I64d,vi);if (i1){ll tqabs(v[i]-v[i-1]);s1[i]max(s1[i-1],tq);}}frt(i,n,1){if (in){ll tqabs(v[i]-v[i1]);s2[i]max(s2[i1],tq);}}ll anss2[2]s1[n-1];ft(i,2,n-1){ll tqabs(v[i1]-v[i-1]);tqmax(tq,s1[i-1]);tqmax(tq,s2[i1]);anstq;}printf(%I64d\n,ans);}
}