P3287 [SCOI2014]方伯伯的玉米田

原题链接
数据结构优化DP

前置知识:二维树状数组 e.g.https://www.luogu.com.cn/problem/P4514
思路如下:
在这里插入图片描述代码如下:

#include <cstdio>
#include <cctype>using namespace std; inline int read() {int x = 0, f = 0; char ch = getchar(); while (!isdigit(ch)) f = ch == '-', ch = getchar(); while (isdigit(ch)) x = (x << 3) + (x << 1) + (ch ^ 48), ch = getchar(); return f ? -x : x; 
}inline void print(int x) {if (x < 0) putchar('-'), x = -x;if (x < 10) putchar(x  + '0');else {print(x / 10); putchar(x % 10 + '0');}
}const int N = 2050; 
int n, m; 
int tr[4][N][N]; void addtr(int type, int x, int y, int k) {for (int i = x; i < N; i += (i & -i)) {for (int j = y; j < N; j += (j & -j)) {tr[type][i][j] += k; }}
}int asktr(int type, int x, int y) {int res = 0; for (int i = x; i > 0; i -= (i & -i)) {for (int j = y; j > 0; j -= (j & -j)) {res += tr[type][i][j]; }}return res; 
}void add(int x, int y, int k) {addtr(0, x, y, k); addtr(1, x, y, k * y); addtr(2, x, y, k * x); addtr(3, x, y, k * x * y); 
}int ask(int x, int y) {return asktr(0, x, y) * (x * y + y + x + 1) - asktr(1, x, y) * (x + 1) - asktr(2, x, y) * (y + 1) + asktr(3, x, y); 
}int main() {scanf("X %d %d", &n, &m); char opt; int aa, bb, cc, dd, kk; while (~scanf("%s",&opt)) {scanf("%d%d%d%d", &aa, &bb, &cc, &dd);if (opt == 'L') {scanf("%d", &kk); add(aa, bb, kk); add(aa, dd + 1, -kk); add(cc + 1, bb, -kk); add(cc + 1, dd + 1, kk); } else {print(ask(cc, dd) - ask(aa - 1, dd) - ask(cc, bb - 1) + ask(aa - 1, bb - 1)); putchar('\n'); }}return 0;
}

回到本题,
f[i,j]表示以i为结尾,i位置提升j次的最长单调不下降序列,则有:
f[i,j] = max{f[k,l]} + 1, 1 <= k < i, 0 <= l <= j, h[i] + j >= h[k] + l,
考虑滚动数组省去一维,可有h[i] + j >= h[k] + l的限制,则针对该限制再加一维,
f[j, k]表示以i为结尾,提升后高度为j, i位置提升k次的最长单调不下降序列,则有:
j = h[i] + k, f[j,k] = max{f[l,m]} + 1, 1 <= l <= j, 0 <= m <= k,
考虑二维树状数组优化,由于第二维可取0,则整体加1,
代码如下:

#include <cstdio>
#include <cctype>
#include <algorithm>using namespace std; inline int read() {int x = 0, f = 0; char ch = getchar(); while (!isdigit(ch)) f = ch == '-', ch = getchar(); while (isdigit(ch)) x = (x << 3) + (x << 1) + (ch ^ 48), ch = getchar(); return f ? -x : x; 
}inline void print(int x) {if (x < 0) putchar('-'), x = -x;if (x < 10) putchar(x  + '0');else {print(x / 10); putchar(x % 10 + '0');}
}const int N = 10010, L = 5010, K = 510; 
int n, k, ans, a[N], tr[L + K][K]; void update(int x, int y, int kk) {for (int i = x; i < L + K; i += i & -i) {for (int j = y; j < K; j += j & -j) {tr[i][j] = max(tr[i][j], kk); }}
}int find(int x, int y) {int res = 0; for (int i = x; i > 0; i -= i & -i) {for (int j = y; j > 0; j -= j & -j) {res = max(res, tr[i][j]); }}return res; 
}int main() {n = read(); k = read(); for (int i = 1; i <= n; ++i) {a[i] = read(); } for (int i = 1; i <= n; ++i) {for (int j = k; j >= 0; --j) {int x = find(a[i] + j, j + 1) + 1; ans = max(ans, x); update(a[i] + j, j + 1, x); }}print(ans); return 0; 
} 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/66794.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

开工大吉,大数据告诉你一个完全不一样的年

原文链接&#xff1a;点击打开链接 阿里巴巴21日发布的《2018中国人新年俗报告》显示&#xff0c;除夕夜&#xff0c;超过1亿户家庭抢春晚手机淘宝红包&#xff0c;全球2.51亿支付宝用户集齐五福瓜分5亿现金红包&#xff1b;大年初一&#xff0c;淘票票上单场购票三张及以上的用…

汉语言文学专业需要学计算机吗,读个汉语言文学专业,学了有什么鬼用?

请问你在大学读的什么专业&#xff1f;” “汉语言文学。” 你一个男的学什么汉语言&#xff1f;一聊到这&#xff0c;谈话 就没必要再下去了&#xff0c;再聊就是给自己添堵了。 对&#xff0c;我就是学汉语言文学的&#xff0c;这个让我尴尬又痛苦的专业。 高考分数查询之后&…

【Lora智慧农业系统】让农民伯伯轻松坐等收割!

一、概述 ​ 随着智能化的普及&#xff0c;利用物联网等信息技术改造传统农业&#xff0c;对农业生产要素进行数字化设计、智能化控制也快速发展了起来。为了提高农业的产量以及改善农业生态环境&#xff0c;提高生产经营效率&#xff0c;方便人们日常生活&#xff0c;我们设计…

win10将硬盘作为存储池删除读不到盘符_一篇文章让你理解Ceph的三种存储接口(块设备、文件系统、对象存储)...

“Ceph是一个开源的、统一的、分布式的存储系统”&#xff0c;这是我们宣传Ceph时常说的一句话&#xff0c;其中“统一”是说Ceph可以一套存储系统同时提供块设备存储、文件系统存储和对象存储三种存储功能。一听这句话&#xff0c;具有一定存储基础的用户应该已经大致了解了Ce…

谷款量子计算机用了多少光子,中国光量子计算机诞生 脑容量小的别看

原标题&#xff1a;中国光量子计算机诞生 脑容量小的别看 “去和古代一个使用算盘的账房先生解释&#xff0c;我们给你制造出一种可以算得飞快的全新工具(计算机)&#xff0c;于是账房先生开始想&#xff0c;这到底是一种什么样的新算盘&#xff1f;是玻璃珠子&#xff1f;还是…

html5文字开始空两格,一段文字的开头为什么要空两格

有一个简书作者&#xff0c;名叫上官皖又名官皖儿&#xff0c;是中国著名新闻人(总编辑)&#xff0c;他刚才点赞我文&#xff0c;我打开他的主页阅读他的文章&#xff0c;其中有一篇讲到&#xff0c;学生试卷分数下边两条杠究竟是怎么来的。 图片发自简书App 这是生活里一个简单…

一百个你不应该继续用Dev C++的理由

这篇文章来源于一家台湾网站&#xff0c;看完之后觉得很有感想&#xff0c;就分享给大家了。现在NOIP复赛使用的DevC4.9.9.2都是10年前的老东西了&#xff0c;还有无数的大学教授甚至要求使用Win8的学生安装DevC&#xff0c;也不管装上之后能不能用。感觉新一届码农被这个坑爹的…

一个人做饭有哪些推荐?

Chen Sam &#xff0c;一个空号。 355 人赞同 -- 2015.12.28. 一个圣诞节长周末多了100个赞..Whats going on here..感恩。 有同学私信说需要详细步骤的做饭教程&#xff0c;但是这里篇幅太局限了..如果开一个微信公众号什么的有人会想看吗&#xff1f; 第一次认认真真地在知乎…

中国最美的一千个汉字 : 千字文2

中国最美的一千个汉字 : 千字文2 容止若思&#xff0c;言辞安定。 仪容举止要沉静安详&#xff0c;言语措辞要稳重&#xff0c;显得从容沉静。 image image image image image image image image 笃初诚美&#xff0c;慎终宜令。 无论修身、求学、重视开头固然不错&#xff0c;…

“码农”一词是怎么来的?为什么中国程序员会被码农?程序员和农民有什么关联?

原创: 思齐大神 来源:蚁开源社区 很多同学会问,IT行业在中国并不是特别差的行业,而程序员的工资也并不低,但为什么中国的程序员总被称作码农或者说是苦逼的程序员?中国的程序员生活和欧美的有什么不一样? ​ 先说两个小段子 街边,一对情侣在吵架。女孩对男孩说,“我…

中国最美的一千个汉字 : 千字文

千字文 【作者】周兴嗣 【朝代】南北朝 天地玄黄&#xff0c;宇宙洪荒。 天是青黑色的&#xff0c;地是黄色的&#xff0c;宇宙形成于混沌蒙昧的状态中。 天 地 地 玄 黄 宇 宙 洪 荒 日月盈昃&#xff0c;辰宿列张。 太阳正了又斜&#xff0c;月亮圆了又缺&#xff0c;星辰布满…

哪个期货公司手续费低高交返?

只要选择的期货公司&#xff1a;手续费1分、高额比例交返、保证金0&#xff0c;经纪人专业可靠&#xff0c;综合势力完善&#xff0c;开户可以通过开户云办理&#xff0c;那你选择的公司就是好期货公司&#xff0c;其它一切都是浮云&#xff0c;预祝大家投资顺利&#xff0c;能…

哪种手续费的期货公司比较好?

哪种手续费的期货公司比较好&#xff1f; 建议超过0.5倍手续费的公司就可以不用考虑了&#xff0c;最好也别找加倍数的&#xff0c;比如0.1倍、0.2倍这种&#xff0c;因为如果交易所上调手续费时&#xff0c;加倍数的也会跟着上涨&#xff0c;不划算&#xff0c;就找加一分这种…

券商投行如何打搭建工作底稿系统?

2008年&#xff0c;中国证监会下发《关于建立上市公司重大资产重组独立财务顾问工作底稿科技管理系统的通知》&#xff0c;这是首次以成文的形式要求工作底稿接受电子化管控。2020年2月28日&#xff0c;中国证券业协会发布《证券公司投资银行类业务工作底稿电子化管理系统建设指…

投行女自述:我的投行生涯

<span class"img1"> <a href"http://news.sina.com.cn/437/2008/0703/24.html" target"_blank"><img width"16" height"18" align"absmiddle" title"此博文通过手机撰写(手机访问sina.cn)&qu…

文章刚刚开源就被培训机构“BP”了,过于不要脸

大家好&#xff0c;我是冰河~~ 事情是这样的&#xff0c;上周我把一些文章开源了&#xff0c;没想到才开源几天&#xff0c;就被一个不要脸的培训机构直接拿去当课件了&#xff0c;这个事情开始我也不知道&#xff0c;还是一名读者告诉我的。 本来开源这些文章&#xff0c;想的…

能否做好PB业务,可能正成为拉开券商差距的分水岭

转自&#xff1a;https://xueqiu.com/9177020418/89211078 读后总结&#xff1a; PB业务是指证券公司向专业机构投资者和高净值客户等提供集中托管清算、后台运营、研究支持、杠杆融资、证券拆借、资金募集等一站式综合金融服务 PB业务有望成为券商新的增长点&#xff0c;因为…

在中国,咨询公司为啥不值钱?

&#xff08;1&#xff09;知识与经验 一、知识&#xff1a;体系性的方法论工具 中国MBA教育虽然经常目的被扭曲为人脉结识好做买卖&#xff0c;但MBA的课程确实是教人们体系性的方法论工具。越来越多的管理者也都接受过了MBA知识普及。 二、经验 把A企业的经验卖到B企业。这其…

曾经辉煌的投行自营团队,现今何处?

量化投资与机器学习微信公众号&#xff0c;是业内垂直于量化投资、对冲基金、Fintech、人工智能、大数据等领域的主流自媒体。公众号拥有来自公募、私募、券商、期货、银行、保险、高校等行业30W关注者&#xff0c;荣获2021年度AMMA优秀品牌力、优秀洞察力大奖&#xff0c;连续…

人在新加坡,刚下飞机,原地失业!上交大佬刚到新加坡,就被虾皮取消了offer,作者发声了......

上一篇&#xff1a;想要我加班&#xff1f;门都没有。怼的太爽了吧 编辑&#xff1a;Aeneas 好困&#xff0c;转载自新智元 近日&#xff0c;接到虾皮offer的一位网友&#xff0c;携家带口飞到了新加坡&#xff0c;结果一下飞机就发现自己失业了。虾皮这波大规模毁offer操作&am…