动态规划:经典dp
动态规划:经典dp
LSD20164388
如果你过几天就忘了,那么你并没有真正的掌握。
展开
-
2020 China Collegiate Programming Contest - Mianyang Site 2020 CCPC 绵阳站 B. Building Blocks(dp)
传送门题意TTT组数据,每组数据给你三个正整数n,m,kn,m,kn,m,k,其中n,mn,mn,m分别为积木的长和宽(积木由若干个1×1×11\times1\times11×1×1的小方块组成),再给你左前视图(如图所示)每一部分的最终高度aia_iai(共n+mn+mn+m部分),接下来kkk行,每行三个正整数x,y,hx,y,hx,y,h,表示第xxx行yyy列的高度指定为正整数hhh,问你合法的积木总数,对109+710^9+7109+7取模。数据范围:1⩽T,n,m,k⩽105,原创 2020-11-30 18:48:19 · 734 阅读 · 0 评论 -
2020 China Collegiate Programming Contest, Weihai Site L. Clock Master(分组背包+预处理)
传送门题意给你一个正整数nnn,你需要将nnn拆成若干个正整数的和。设拆成了t1,t2,...,ts{t_1,t_2,...,t_s}t1,t2,...,ts这sss个正整数,对于任意自然数kkk,存在向量(k(k(k modmodmod t1,{t_1},t1,kkk modmodmod t2,...,{t_2},...,t2,..., kkk modmodmod ts){t_s})ts),这些向量中的不同向量个数记为xxx。因此每种拆分对应一个不同的向量个数,现在让你求一个使xxx最原创 2020-11-23 16:07:22 · 415 阅读 · 2 评论 -
HDU 6240 Server(2017CCPC哈尔滨 K)01分数规划+树状数组优化dp
题目传送门ServerTime Limit: 20000/10000 MS (Java/Others)Memory Limit: 262144/262144 K (Java/Others)Total Submission(s): 1540Accepted Submission(s): 256Problem DescriptionAlice and Bob are working on a new assignment. In this project, they nee...原创 2020-06-20 12:46:53 · 265 阅读 · 0 评论 -
Puzzle Game HihoCoder - 1634(ICPC 北京 2017 H )最大子矩阵+思维
传送门:https://hihocoder.com/problemset/problem/1634题意:给你一个n*m(n,m<=150)的数字矩阵,每个元素val(-1000<=val<=1000),以及一个数字p(-1000<=p<=1000)。你现在最多可以修改矩阵中的一个数字,改成p,求最大子矩阵的最小值思路:其实关键还是想到,对于某个点(i,j),要么最大子矩阵(设值为ma)经过了这个点,要么没有经过这个点。如果没有经过这个点,我们只需要统计其上下左右四个部分原创 2020-06-12 14:28:50 · 242 阅读 · 0 评论 -
Codeforces Round #637 (Div. 2) - Thanks, Ivan Belonogov! D. Nastya and Scoreboard(贪心+dp)
D. Nastya and Scoreboardtime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputDenis, who managed to buy flowers and sweets (you will le...原创 2020-04-24 16:29:51 · 424 阅读 · 0 评论 -
UVALive - 8149 Ingredients(拓扑排序+01背包)
题目链接:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=6171题意:给你m,n(m<=1e4,n<=1e6)表示你有m元钱,n种合成方式。每种合成方式给你三个字符串s,ss,sss以及两个整数x...原创 2019-05-03 11:00:35 · 406 阅读 · 0 评论 -
ZOJ 3956 Course Selection System (01背包)
Course Selection SystemTime Limit:1 Second Memory Limit:65536 KBThere arencourses in the course selection system of Marjar University. Thei-th course is described by two values: happines...原创 2019-05-01 21:29:23 · 350 阅读 · 0 评论 -
2019年ICPC南昌网络赛 D. Match Stick Game (记搜)
题库链接:https://nanti.jisuanke.com/t/38223Xiao Ming recently indulges in match stick game and he thinks he is good at it. His friend Xiao Jun decides to test him. Xiao Jun gives him an expression of le...原创 2019-04-22 15:47:13 · 366 阅读 · 0 评论 -
2019年华南理工大学程序设计竞赛(春季赛) K Parco_Love_String(dp+递推/后缀数组)
链接:https://ac.nowcoder.com/acm/contest/625/K来源:牛客网时间限制:C/C++ 2秒,其他语言4秒空间限制:C/C++ 131072K,其他语言262144K64bit IO Format: %lld题目描述众所周知,在算法竞赛中,出题人对他出的题的难度往往存在错误的估计。比如出题人本想出个简单题,没想到却出成了重坑细节题;本想出个中...原创 2019-04-15 19:25:30 · 1407 阅读 · 0 评论 -
ZOJ 3187 Inviting Friends (二分+完全背包)
Inviting FriendsTime Limit: 1 Second Memory Limit: 32768 KBYou want to hold a birthday party, inviting as many friends as possible, but you have to prepare enough food for them. For each pers...原创 2019-02-17 21:10:41 · 478 阅读 · 0 评论 -
CodeForces - 633C - Spy Syndrome 2(字典树+dp)
C. Spy Syndrome 2time limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputAfter observing the results of Spy Syndrome, Yash realised the ...原创 2019-01-30 17:21:53 · 371 阅读 · 0 评论 -
Educational Codeforces Round 55 (Rated for Div. 2) E Increasing Frequency(dp)
题目链接:http://codeforces.com/contest/1082/problem/EE. Increasing Frequencytime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputYou ar...原创 2018-12-02 09:47:18 · 481 阅读 · 10 评论 -
HDU 6007 Mr. Panda and Crystal(dijkstra变形+完全背包)
Mr. Panda and CrystalTime Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 979 Accepted Submission(s): 322 Problem DescriptionLong long tim...原创 2018-10-29 15:34:08 · 283 阅读 · 0 评论 -
HDU 6249 Alice’s Stamps (dp)
Alice’s StampsTime Limit: 6000/3000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1169 Accepted Submission(s): 417 Problem DescriptionAlice likes to coll...原创 2018-10-21 09:24:22 · 281 阅读 · 0 评论 -
2018年9月20日训练总结
整理了后缀自动机求出现次数不少于k次的子串个数模板。整理了区间加、乘、取反、查询的树链剖分模板。焦作F题费用流成功背锅,我博客里有几乎是原题,结果比赛的时候那道题没看。居然还是我的博客里浏览量第二多的。难道是因为我比赛的时候调树剖调到自闭了?B题比赛的时候思路没错,就是维护最大值和最小值。赛后补了之后发现效率还挺高。K题是个裸的多重背包的二进制拆分,可惜卡掉了队友会的NTT...原创 2018-09-20 20:48:08 · 259 阅读 · 0 评论 -
UVA - 12099 The Bookcase(巧妙DP)
题意:给你n(3<=n<=70)本书,每本书有一个高度h和宽度t,你要构造一个三层的书架,把所有书都放上,使 书架的总高度*宽度最大的那一层的宽度 最小。(即 (∑3 j=1 maxi∈Sj hi) ×(max3 j=1∑i∈Sj ti) is minimized)思路:DP。这里参考了网上的一种十分巧妙的dp方法,仅需要二维dp: dp[j][k]表示第二层宽度为j,第三层宽度为...原创 2018-06-12 20:46:44 · 576 阅读 · 0 评论 -
UVA - 12002 Happy Birthday & UVA - 11456 Trainsorting (LIS+LDS)
把这两道题放一起是因为几乎是同一道题。。。UVA - 12002 Happy Birthday题意:给你一个序列,a[i]表示第i个盘子的大小。一共有n<=500个盘子。你现在要从1走到n,拿走某些盘子,规则如下:1、手中没有盘子,则可以拿起一个盘子。也可以不拿。2、手中有一些盘子(必须保证上面的盘子的大小<=下面盘子的大小),如果现在你面前这个盘子大小<=你手中最小的盘子的大小...原创 2018-05-22 20:12:00 · 340 阅读 · 1 评论 -
UVA - 10599 - Robots(II)(LIS变形输出任意路径)
题意:给一个n*m的矩阵,某些格子有垃圾。机器人从(1,1)出发到达(n,m),只能向下或者向右走,求最多能清理多少垃圾,和能清理最大数目垃圾的路径数,输出任意一条路径。思路:LIS的变形。有如下的细节需要注意:1、为了保证下标唯一性,我们标记(i,j)为下标(i-1)*m+j-1; 最后输出路径时要+1。2、标号后一定要排序!!!(WA了好多发)3、若点(n,m)无垃圾,则要加入数组中并且标记,...原创 2018-05-19 14:57:19 · 234 阅读 · 0 评论 -
UVA - 10635 Prince and Princess(最长公共子序列O(nlogn))
题意:给你k,n,m三个数。再给你两个序列,长度分别为n+1和m+1,k没啥用,求两个序列的最长公共子序列。思路:O(n^2)会超时,于是转化为O(nlogn)的最长上升子序列。代码:#include <bits/stdc++.h>#define ll long long#define inf 0x3f3f3f3fusing namespace std;const int ma...原创 2018-05-19 10:09:24 · 267 阅读 · 0 评论