浪潮笔试题

最大绝对值和code

时间限制: 1000MS
内存限制: 131072KB
内存

题目描述:class

给你一个长度为n的序列A1,A2,...,An。而后构造一个长度为n的序列B1,B2,...,Bn。(1≤i≤n,1≤Bi≤Ai)使∑ni=2|Bi−Bi−1| 的值最大。统计


输入描述
笔试

第一行包含一个整数 n 表示序列的长度。(1 <= n <= 50000) 第二行包含n个整数 分别表示 Ai (1 <= i <= n, 1 <= Ai <= 10000)                           移动

输出描述di

输出最大值时间

样例输入思考

5
10
1
10
1
10

样例输出co

36

不会作,再思考一下(只AC了18%)

还有一题是移动石头的题,至关于给一组数 41253 能够随机拿一个数放在最前面或者最后面。求最小移动次数。我知道这道题要统计最长连续子序列。好比上面的123。可是不知道为啥,只过了91%

另外一个笔试试卷里面还有一道题是这样的:给一个01串,能够翻转某一段字符,(0变为1,1变为0),题目意思应该是只能翻转一次,能够任选一段字符区间。使得01交错的子序列最长。(这个就是找相邻字符不相同的个数k,若是小于n-1,则输出k+2,不然输出n)