2026/5/21 7:42:21
网站建设
项目流程
网站开发英文翻译,建各企业网站多少钱,佛山市骏域网站建设,杭州注册公司区间DP第3课#xff1a;区间DP应用案例实践2 题目描述
有 NNN 个不同的正整数 x1x_1x1, x2x_2x2, …, xNx_NxN 排成一排#xff0c;我们可以从左边或右边去掉连续的 iii (1≤i≤n)(1 \le i \le n)(1≤i≤n) 个数#xff08;只能从两边删除数#xff09;#xff0c;…区间DP第3课区间DP应用案例实践2题目描述有N NN个不同的正整数x 1 x_1x1,x 2 x_2x2, …,x N x_NxN排成一排我们可以从左边或右边去掉连续的i ii( 1 ≤ i ≤ n ) (1 \le i \le n)(1≤i≤n)个数只能从两边删除数剩下N − i N-iN−i个数再把剩下的数按以上操作处理直到所有的数都被删除为止。每次操作都有一个操作价值比如现在要删除从i ii位置到k kk位置上的所有的数。操作价值为∣ x i − x k ∣ × ( k − i 1 ) |x_i-x_k| \times (k-i1)∣xi−xk∣×(k−i1)如果只去掉一个数操作价值为这个数的值。问如何操作可以得到最大值求操作的最大价值。输入格式第一行为一个正整数N NN;第二行有N NN个用空格隔开的N NN个不同的正整数。输出格式一行包含一个正整数为操作的最大值输入输出样例 1输入 16 54 29 196 21 133 118输出 1768说明/提示【样例解释和说明】说明经过3 33次操作可以得到最大值第一次去掉前面3 33个数54 5454、29 2929、196 196196操作价值为426 426426。第二次操作是在剩下的三个数( 21 , 133 , 118 ) (21,133,118)(21,133,118)中去掉最后一个数118 118118操作价值为118 118118。第三次操作去掉剩下的2 22个数21 2121和133 133133操作价值为224 224224。操作总价值为426 118 224 768 426118224768426118224768。【数据范围】3 ≤ N ≤ 100 3≤N≤1003≤N≤1001 ≤ x i ≤ 1000 1 \le x_i \le 10001≤xi≤1000方法思路状态定义定义dp[i][j]为删除从位置i到j的所有数字所能获得的最大价值。初始状态当区间长度为1时即i j此时的价值就是这个数字本身的值。状态转移对于每个区间[i, j]我们有两种选择直接删除整个区间其价值为abs(a[i] - a[j]) * (j - i 1)。将区间分割成两个子区间[i, k]和[k1, j]并取这两个子区间价值的和的最大值。递推顺序按区间长度从小到大处理逐步计算每个区间的最大价值。解决代码#includebits/stdc.husingnamespacestd;intn;intdp[110][110];intmain(){cinn;for(inti1;in;i){cina[i];}// 初始化长度为1的区间for(inti1;in;i){dp[i][i]a[i];}// 枚举区间长度for(intlen2;lenn;len){for(inti1;ilen-1n;i){intjilen-1;// 计算直接删除整个区间的价值intvalabs(a[i]-a[j])*len;// 计算分割后的最大值intmax_split0;for(intki;kj;k){max_splitmax(max_split,dp[i][k]dp[k1][j]);}dp[i][j]max(val,max_split);}}coutdp[1][n]endl;return0;}代码解释输入处理读取输入的整数n和数组a。初始化将所有长度为1的区间的最大价值初始化为该位置的值。动态规划计算按区间长度从小到大逐步计算每个区间的最大价值。对于每个区间计算直接删除整个区间的价值和分割后的子区间价值之和的最大值并更新当前区间的最大价值。输出结果最终结果存储在dp[1][n]中表示整个数组的最大操作价值。完整系列资料请查看专栏《csp信奥赛C动态规划》https://blog.csdn.net/weixin_66461496/category_13096895.html各种学习资料助力大家一站式学习和提升#includebits/stdc.husingnamespacestd;intmain(){cout########## 一站式掌握信奥赛知识! ##########;cout############# 冲刺信奥赛拿奖! #############;cout###### 课程购买后永久学习不受限制! ######;return0;}一、CSP信奥赛C通关学习视频课C语法基础C语法进阶C算法C数据结构CSP信奥赛数学CSP信奥赛STL二、CSP信奥赛C竞赛拿奖视频课信奥赛csp-j初赛高频考点解析CSP信奥赛C复赛集训课12大高频考点专题集训三、考级、竞赛刷题题单及题解GESP C考级真题题解CSP信奥赛C初赛及复赛高频考点真题解析CSP信奥赛C一等奖通关刷题题单及题解详细内容1、csp/信奥赛C完整信奥赛系列课程永久学习https://edu.csdn.net/lecturer/7901 点击跳转2、CSP信奥赛C竞赛拿奖视频课https://edu.csdn.net/course/detail/40437 点击跳转3、csp信奥赛冲刺一等奖有效刷题题解CSP信奥赛C初赛及复赛高频考点真题解析持续更新https://blog.csdn.net/weixin_66461496/category_12808781.html 点击跳转2025 csp-j 复赛真题及答案解析最新更新2025 csp-x(山东) 复赛真题及答案解析最新更新2025 csp-x(河南) 复赛真题及答案解析最新更新2025 csp-x(辽宁) 复赛真题及答案解析最新更新2025 csp-x(江西) 复赛真题及答案解析最新更新2025 csp-x(广西) 复赛真题及答案解析最新更新2020 ~ 2024 csp 复赛真题题单及题解2019 ~ 2022 csp-j 初赛高频考点真题分类解析2021 ~ 2024 csp-s 初赛高频考点解析2023 ~ 2024 csp-x (山东)初赛真题及答案解析2024 csp-j 初赛真题及答案解析2025 csp-j 初赛真题及答案解析最新更新2025 csp-s 初赛真题及答案解析最新更新2025 csp-x (山东)初赛真题及答案解析(最新更新)2025 csp-x (江西)初赛真题及答案解析(最新更新)2025 csp-x (辽宁)初赛真题及答案解析(最新更新)CSP信奥赛C一等奖通关刷题题单及题解持续更新https://blog.csdn.net/weixin_66461496/category_12673810.html 点击跳转129 道刷题练习和详细题解涉及模拟算法、数学思维、二分算法、 前缀和、差分、深搜、广搜、DP专题、 树和图4、GESP C考级真题题解GESP(C 一级二级三级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12858102.html 点击跳转GESP(C 四级五级六级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12869848.html 点击跳转· 文末祝福 ·#includebits/stdc.husingnamespacestd;intmain(){cout跟着王老师一起学习信奥赛C;cout 成就更好的自己 ;cout csp信奥赛一等奖属于你! ;return0;}