绝对是好题

#include<bits/stdc++.h>
using namespace std;
#define maxn 300005
#define ll long long
ll sum1[maxn],sum2[maxn],sum3[maxn],sum[maxn],n,a[maxn][2];
int main(){cin>>n;for(int i=1;i<=n;i++)cin>>a[i][0];for(int i=1;i<=n;i++)cin>>a[i][1];for(int i=1;i<=n;i++){//形状1的长度 if(i%2==0){sum3[i]=sum3[i-1];sum3[i]+=a[i][0]*(2*i-1);sum3[i]+=a[i][1]*(2*i-2);}else {sum3[i]=sum3[i-1];sum3[i]+=a[i][0]*(2*i-2);sum3[i]+=a[i][1]*(2*i-1);}}for(int i=n;i>=1;i--)//求一下后缀 sum[i]=sum[i+1]+a[i][0]+a[i][1];for(int i=n;i>=1;i--){//上面往下绕的权值 sum1[i]+=(2*n-1)*a[i][1];//下面的贡献是2*n-1 sum1[i]+=2*(i-1)*a[i][0];//下面的贡献是2*(i-1) sum1[i]+=sum1[i+1]-sum[i+1]; }for(int i=n;i>=1;i--){//下面往上绕的权值 sum2[i]+=2*(i-1)*a[i][1];//下面的贡献是2*(i-1)sum2[i]+=(2*n-1)*a[i][0];sum2[i]+=sum2[i+1]-sum[i+1]; } ll ans=0;for(int i=0;i<=n;i++) {if(i%2==0)ans=max(ans,sum3[i]+sum1[i+1]);else ans=max(ans,sum3[i]+sum2[i+1]);}cout<<ans<<endl;
}

转载于:https://www.cnblogs.com/zsben991126/p/10952739.html

线性dp,后缀处理——cf1016C好题相关推荐

  1. CH 5102 Mobile Service(线性DP)

    CH 5102 Mobile Service \(solution:\) 这道题很容易想到DP,因为题目里已经说了要按顺序完成这些请求.所以我们可以线性DP,但是这一题的状态不是很好设,因为数据范围有 ...

  2. 动态规划之线性DP题集

    动态规划之线性DP 文章目录 动态规划之线性DP (一)LIS问题 最长上升子序列 (朴素动规) (二分+贪心+动规) 最大子序和 (动规) (贪心) 最长连续递增序列 (动规) (双指针) 俄罗斯套 ...

  3. 799. 香槟塔 : 简单线性 DP 运用题

    题目描述 这是 LeetCode 上的 799. 香槟塔 ,难度为 中等. Tag : 「动态规划」.「线性 DP」 我们把玻璃杯摆成金字塔的形状,其中 第一层 有 1 个玻璃杯, 第二层 有 2 个 ...

  4. A. Boredom(线性dp基础题)

    题目的大意是:给定你一个数组,每次可以删掉一个大小为a的数,获得a的分数,同时删除数列中所有大小为a+1和a-1的数.问删除所有数组中的数后,能够获得的最大分数值. 思路:本题可以用线性dp来解决.d ...

  5. 动态规划 —— 线性 DP

    [概述] 线性动态规划,是较常见的一类动态规划问题,其是在线性结构上进行状态转移,这类问题不像背包问题.区间DP等有固定的模板. 线性动态规划的目标函数为特定变量的线性函数,约束是这些变量的线性不等式 ...

  6. 【动态规划】线性dp P1043 数字游戏

    思路: 这题和 [动态规划]P1018 线性dp:乘积最大_m0_52043808的博客-CSDN博客 十分类似,都是把一组数分成固定的部分,然后对分好的数进行特定的操作,求操作后所得的最值 所以,两 ...

  7. [nk] 糟糕的打谱员 线性DP

    前言 线性DP是世界上最难的算法!!(我在口胡) 前言 : https://ac.nowcoder.com/acm/contest/11215/C 思路 看完该题之后 (问的什么鬼 贪心?排序之后交替 ...

  8. POJ3666 线性dp+维度优化

    POJ3666 线性dp+维度优化 题面 POJ3666 题面 思路 首先是重要的归纳法寻求思路的思想,在满足S最小化的前提下,假设存在一种构造前k位序列B的方案,即已经构造B1B2⋯BkB_1B_2 ...

  9. 寒假算法学习 OI生涯 - 悄无声息(模拟+线性DP优化) OI生涯 - 德国心脏病 (模拟)

    OI生涯 - 悄无声息 题目描述 「李」走路是没有动静的,如果你在干「李」不让你干的事情,他会神不知鬼不觉的走到你的身后,然后把你奶一顿! 因为你知道「李」走路没有动静,所以为了提防,可以认为「李」有 ...

最新文章

  1. 安卓获取浏览器上网记录_Android 获取浏览器当前分享页面的截屏示例
  2. 阿里云EMR异步构建云HBase二级索引
  3. linux内核配置系统浅析(转)
  4. 错误处理:java.lang.NoSuchMethodException: org.apache.catalina.deploy.WebXml addFilter
  5. 【Android 安装包优化】Android 中使用 SVG 图片 ( SVG 矢量图简介 | Android 中生成 Vector 矢量图资源 )
  6. 一位996、CRUD开发者的一天
  7. 前端学习(2005)vue之电商管理系统电商系统之获取动态参数列表
  8. 中国工程院2021年院士增选有效候选人都来自哪些单位?
  9. rowdata java_Java RowDataUtil.addRowData方法代碼示例
  10. FCC 中级算法题 Where art thou
  11. P3160 [CQOI2012]局部极小值
  12. 数据结构(C++)—— 向量(Vector)
  13. collections的defaultdict使用
  14. 图像增强-对数Log变换
  15. 计算机软件著作权查询网址
  16. 假币问题(二分法与三分法实现)
  17. 视频教程-微信公众号编辑器开发-微信公众号开发11-微信开发php-微信开发
  18. 以梦为马,扬帆起航,双非人的2021,万字逐梦旅
  19. 视频有水印不用怕,一键轻松解析视频水印,高清画质!
  20. 国内家具行业数据浅析

热门文章

  1. vue 二维码+条形码识别
  2. Debian 查看与修改IP,设置多ip,network与networkManager配置
  3. 实用算法 002: SAM 上的根号暴力
  4. TCP三次握手常见问题
  5. 分享32套精美的免费 PSD 网页界面设计素材
  6. 在哪里下载Linux
  7. Python爬虫系列之爬取某奢侈品小程序店铺商品数据
  8. 分布式系统中的幂等性(客户端与服务端的交易一致性,避免多次扣款)
  9. spring boot 配置多个Filter过滤器
  10. dropdownList获取值