![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
动态规划
文章平均质量分 82
MrTinTin
这个作者很懒,什么都没留下…
展开
-
数的度量——一道计数问题的三种做法
https://www.acwing.com/problem/content/description/1083/度的数量求给定区间 [X,Y] 中满足下列条件的整数个数:这个数恰好等于 K 个互不相等的 B的整数次幂之和。例如,设 X=15,Y=20,K=2,B=2,则有且仅有下列三个数满足题意:17=24+2018=24+2120=24+22输入格式...原创 2020-02-05 11:35:48 · 402 阅读 · 1 评论 -
宝藏
https://www.acwing.com/problem/content/531/参与考古挖掘的小明得到了一份藏宝图,藏宝图上标出了n个深埋在地下的宝藏屋,也给出了这n个宝藏屋之间可供开发的m条道路和它们的长度。 小明决心亲自前往挖掘所有宝藏屋中的宝藏。但是,每个宝藏屋距离地面都很远,也就是说,从地面打通一条到某个宝藏屋的道路是很困难的,而开发宝藏屋之间的道路则相对容易很多。小明的...原创 2020-02-02 15:24:02 · 349 阅读 · 1 评论 -
多重背包 单调队列优化
#include <iostream>#include <algorithm>#include <cstring>#define f(i,l,r) for(i=(l);i<=(r);i++)using namespace std;const int MAXN = 20005;int n, m;int f[MAXN], g[MAXN];in...原创 2020-01-31 10:48:54 · 200 阅读 · 0 评论 -
cf #round 600E Antenna Coverage
https://codeforces.com/contest/1253/problem/E#include<iostream>#include<cstring>#include<cstdio>#include<algorithm>#define f(i,l,r) for(i=(l);i<=(r);i++)#define ff(i,...原创 2019-11-28 10:18:30 · 386 阅读 · 0 评论 -
【洛谷 p5464】缩小社交圈
https://www.luogu.org/problem/P5464dp(60分)f[i][j]表示当前选第i个上一个选的是第j个//luogu 5464 60分算法#include<iostream>#include<algorithm>#define ll long long#define f(i,l,r) for(i=(l);i<=(r)...原创 2019-10-21 22:33:18 · 531 阅读 · 0 评论 -
重建道路 洛谷p1272
题目描述一场可怕的地震后,人们用N个牲口棚(1≤N≤150,编号1..N)重建了农夫John的牧场。由于人们没有时间建设多余的道路,所以现在从一个牲口棚到另一个牲口棚的道路是惟一的。因此,牧场运输系统可以被构建成一棵树。John想要知道另一次地震会造成多严重的破坏。有些道路一旦被毁坏,就会使一棵含有P(1≤P≤N)个牲口棚的子树和剩余的牲口棚分离,John想知道这些道路的最小数目。输入输出...转载 2018-10-29 15:06:28 · 217 阅读 · 0 评论 -
提高水平
https://nanti.jisuanke.com/t/31436状压dp。#include<cstdio>#include<cctype>#include<algorithm>inline int getint() { register char ch; while(!isdigit(ch=getchar())); r...原创 2018-10-04 14:24:30 · 197 阅读 · 0 评论 -
括号
链接:https://www.nowcoder.com/acm/contest/164/C目描述小A有一个只包含左右括号的字符串 S。但他觉得这个字符串不够美观,因为它不是一个合法的括号串。一个合法的括号串是这样定义的:1. () 是合法的括号串。2. 若 A 是合法的括号串,则 (A) 则是合法的括号串。3. 若 A,B 是合法的括号串,则 AB 也是合法的括号串。小A现在希...转载 2018-10-13 21:41:31 · 351 阅读 · 0 评论 -
愤怒
https://www.nowcoder.com/acm/contest/188/DA、B序列DP[i][j]代表第一个括号序列的左括号比右括号多j个。如果遇到"(" ,A序列的最大j肯定会加1.反之,A序列的最大j会减1。 因为:这个")"如果给B序列,那么为了稳定B序列,之前肯定分一个"("给B,如果给A序列,那么j肯定--。所以不管怎么样,A序列的最大J肯定会减1...转载 2018-10-13 21:52:24 · 167 阅读 · 0 评论 -
启示录 poj3028
数位DP。#include<iostream>#define f(i,l,r) for(i=(l);i<=(r);i++)using namespace std;long long f[22][4];int T,n,m;inline void MakeTable(){ int i,j,k; f[0][0]=1; f(i,1,21){ f[i][0]=9...原创 2018-09-30 20:08:41 · 267 阅读 · 0 评论 -
祖玛
题意:给你一串01串,你可以在任意位置插入0或1,有三个及以上的连续的相同的会消去,会有连锁反应,问至少插入几次能消完思路:听说是个原题,,,这场真多原题有三种消除方式:1.直接将区间分成两部分,各消各的。2.如果两头是同色的,可以消完中间的,合并后消去两头,代价和两头的数量有关。3.如果两头同色,又存在一头只有一个连续的情况,可以中间再转载 2017-11-04 16:51:19 · 340 阅读 · 0 评论 -
扫雷 洛谷p2327
题目描述输入输出格式输入格式:第一行为N,第二行有N个数,依次为第二列的格子中的数。(1输出格式:一个数,即第一列中雷的摆放方案数。输入输出样例输入样例#1: 复制21 1输出样例#1: 复制2如果从上到下确定每个雷的位置,那么判断某个位置能否为雷只受它上面2格雷原创 2017-11-03 21:27:30 · 375 阅读 · 0 评论 -
物流运输 洛谷p1772
题目描述物流公司要把一批货物从码头A运到码头B。由于货物量比较大,需要n天才能运完。货物运输过程中一般要转停好几个码头。物流公司通常会设计一条固定的运输路线,以便对整个运输过程实施严格的管理和跟踪。由于各种因素的存在,有的时候某个码头会无法装卸货物。这时候就必须修改运输路线,让货物能够按时到达目的地。但是修改路线是—件十分麻烦的事情,会带来额外的成本。因此物流公司希望能够订一个n天的运输计原创 2017-11-03 19:02:27 · 1031 阅读 · 0 评论 -
洛谷 p1970
题目描述花匠栋栋种了一排花,每株花都有自己的高度。花儿越长越大,也越来越挤。栋栋决定把这排中的一部分花移走,将剩下的留在原地,使得剩下的花能有空间长大,同时,栋栋希望剩下的花排列得比较别致。具体而言,栋栋的花的高度可以看成一列整数h1,h2..hn。设当一部分花被移走后,剩下的花的高度依次为g1,g2..gn,则栋栋希望下面两个条件中至少有一个满足:条件 A原创 2017-10-24 20:45:20 · 410 阅读 · 0 评论 -
Portal1
https://www.luogu.org/problemnew/show/U41569题目背景Agent获取资源有很多种方式,HACK就是其中的一中,侵入Portal可以获得很多有用的资源。ENLIGHTENED总部因为参加XM大战,只剩下一点点可用资源了,所以ENLIGHTENED行动指挥想要进行HACK活动,尽量增加库存。题目描述地图上有N个可以被HACK的Portal,编号...转载 2018-10-14 10:33:10 · 362 阅读 · 0 评论 -
大师 洛谷p4933
题目背景建筑大师最近在跟着数学大师ljt12138学数学,今天他学了等差数列,ljt12138决定给他留一道练习题。题目描述ljt12138首先建了n个特斯拉电磁塔,这些电塔排成一排,从左到右依次标号为1到n,第i个电塔的高度为h[i]。建筑大师需要从中选出一些电塔,然后这些电塔就会缩到地下去。这时候,如果留在地上的电塔的高度,从左向右构成了一个等差数列,那么这个选择方案就会被认为...原创 2018-10-22 16:28:50 · 324 阅读 · 0 评论 -
任务安排
http://caioj.cn/problem.php?id=1084题目描述【问题描述】N个任务排成一个序列在一台机器上等待完成(顺序不得改变),这N个任务被分成若干批,每批包含相邻的若干任务。从时刻0开始,这些任务被分批加工,第i个任务单独完成所需的时间是Ti。在每批任务开始前,机器需要启动时间S,而完成这批任务所需的时间是各个任务需要时间的总和(同一批任务将在同一时刻完成)。每个...原创 2018-11-02 18:36:58 · 451 阅读 · 0 评论 -
[USACO14DEC] Cow Jog_Gold 牛慢跑(金) 洛谷p4873
题意翻译Farmer John 的 NN 头奶牛 ( 1 ≤ N ≤ 10^5 )(1≤N≤105) 正在一条长度无限的跑道上慢跑,每头奶牛都有一个不同的开始位置,以及不同的跑步速度。为了方便奶牛们互相超越,整个跑道被分成了若干条赛道。在同一时刻,不可能有在同一条赛道上的两头奶牛占据相同的位置。现在奶牛们要跑 TT 分钟,在跑步过程中,他们不会改变自己所在的赛道和自己跑步的速度。FJ想...原创 2018-11-01 16:52:55 · 304 阅读 · 0 评论 -
愤怒的小鸟 洛谷p2831
题目描述Kiana 最近沉迷于一款神奇的游戏无法自拔。简单来说,这款游戏是在一个平面上进行的。有一架弹弓位于 (0,0)(0,0) 处,每次 Kiana 可以用它向第一象限发射一只红色的小鸟,小鸟们的飞行轨迹均为形如 y=ax^2+bxy=ax2+bx 的曲线,其中 a,ba,b 是Kiana 指定的参数,且必须满足 a < 0a<0,a,ba,b 都是实数。当小鸟落回...原创 2018-11-01 09:57:30 · 287 阅读 · 0 评论 -
[SDOI2006]保安站岗 洛谷p2458
题目描述五一来临,某地下超市为了便于疏通和指挥密集的人员和车辆,以免造成超市内的混乱和拥挤,准备临时从外单位调用部分保安来维持交通秩序。已知整个地下超市的所有通道呈一棵树的形状;某些通道之间可以互相望见。总经理要求所有通道的每个端点(树的顶点)都要有人全天候看守,在不同的通道端点安排保安所需的费用不同。一个保安一旦站在某个通道的其中一个端点,那么他除了能看守住他所站的那个端点,也能看到...原创 2018-10-30 08:37:47 · 310 阅读 · 0 评论 -
宝藏 洛谷p3959
题目描述参与考古挖掘的小明得到了一份藏宝图,藏宝图上标出了 nn 个深埋在地下的宝藏屋, 也给出了这 nn 个宝藏屋之间可供开发的mm 条道路和它们的长度。小明决心亲自前往挖掘所有宝藏屋中的宝藏。但是,每个宝藏屋距离地面都很远, 也就是说,从地面打通一条到某个宝藏屋的道路是很困难的,而开发宝藏屋之间的道路 则相对容易很多。小明的决心感动了考古挖掘的赞助商,赞助商决定免费赞助他打通一条从...原创 2018-10-31 20:59:50 · 352 阅读 · 0 评论 -
规划 洛谷p1642
题目描述某地方有N个工厂,有N-1条路连接它们,且它们两两都可达。每个工厂都有一个产量值和一个污染值。现在工厂要进行规划,拆除其中的M个工厂,使得剩下的工厂依然连成一片且 总产量/总污染 的值最大。输入输出格式输入格式: 第一行N M(1<N<100,1<=M<N),表示工厂个数和要拆除的个数。第二行N个正整数,表示每个工厂的产值[1..10000]...原创 2018-10-31 10:30:29 · 307 阅读 · 0 评论 -
选课 洛谷p2014
题目描述在大学里每个学生,为了达到一定的学分,必须从很多课程里选择一些课程来学习,在课程里有些课程必须在某些课程之前学习,如高等数学总是在其它课程之前学习。现在有N门功课,每门课有个学分,每门课有一门或没有直接先修课(若课程a是课程b的先修课即只有学完了课程a,才能学习课程b)。一个学生要从这些课程里选择M门课程学习,问他能获得的最大学分是多少?输入输出格式输入格式: 第一行有...原创 2018-10-29 16:05:04 · 251 阅读 · 0 评论 -
[USACO18OPEN]Talent Show 洛谷p4377
题目描述Farmer John要带着他的NN头奶牛,方便起见编号为1 \ldots N1…N,到农业展览会上去,参加每年的达牛秀!他的第ii头奶牛重量为w_iwi,才艺水平为t_iti,两者都是整数。 在到达时,Farmer John就被今年达牛秀的新规则吓到了:(一)参加比赛的一组奶牛必须总重量至少为WW(这是为了确保是强大的队伍在比赛,而不仅是强大的某头奶牛),并且(二)总才艺...原创 2018-10-31 09:33:45 · 328 阅读 · 0 评论 -
War2
题目背景XM大战如期而至,Agent们齐聚一地,展开最后的对决。对战有很多种方式,有些复杂的方式可以获得更高的分数。可惜ENLIGHTENED的人并不怎么聪明,只会简单的hack,所以ENLIGHTENED行动指挥找到了你来做他们的总参谋。题目描述地图上有NN个Portal,现在某一名Agent的任务是占领该地图上的MM个Portal,这名Agent占领第ii个Portal可以得到的分...转载 2018-10-21 20:10:57 · 318 阅读 · 0 评论 -
换教室 p2680
题目描述对于刚上大学的牛牛来说,他面临的第一个问题是如何根据实际情况申请合适的课程。在可以选择的课程中,有 2n2n 节课程安排在 nn 个时间段上。在第 ii(1 \leq i \leq n1≤i≤n)个时间段上,两节内容相同的课程同时在不同的地点进行,其中,牛牛预先被安排在教室 c_ici 上课,而另一节课程在教室 d_idi 进行。在不提交任何申请的情况下,学原创 2017-10-31 21:08:02 · 276 阅读 · 0 评论 -
花园 洛谷p1357
题目描述小L有一座环形花园,沿花园的顺时针方向,他把各个花圃编号为1~N(2例如,N=10,M=5,K=3。则CCPCPPPPCC 是一种不符合规则的花圃;CCPPPPCPCP 是一种符合规则的花圃。请帮小L求出符合规则的花园种数Mod 1000000007由于请您编写一个程序解决此题。输入输出格式输入格式:一行,三个数N原创 2017-10-31 14:42:52 · 510 阅读 · 0 评论 -
书本整理 洛谷p1103
题目描述Frank是一个非常喜爱整洁的人。他有一大堆书和一个书架,想要把书放在书架上。书架可以放下所有的书,所以Frank首先将书按高度顺序排列在书架上。但是Frank发现,由于很多书的宽度不同,所以书看起来还是非常不整齐。于是他决定从中拿掉k本书,使得书架可以看起来整齐一点。书架的不整齐度是这样定义的:每两本书宽度的差的绝对值的和。例如有4本书:1x2 5x3 2x4原创 2017-10-30 19:31:44 · 480 阅读 · 0 评论 -
Jin Ge Jin Qu UVa12563
题意: KTV里面有n首歌曲你可以选择,每首歌曲的时长都给出了. 对于每首歌曲,你最多只能唱1遍. 现在给你一个时间限制t (ttime必须) ? 最终输出num+1 和 time+678 即可. 注意: 你需要优先让歌曲数目最大的情况下,再去选择总时长最长的.分析: 其实本题本质上就是一个标准的01背包问题. 问你时间内最多可以选择哪转载 2017-07-27 17:01:26 · 271 阅读 · 0 评论 -
Tour UVa 1347
题目大意:有n个点,给出x、y坐标。找出一条路,从最左边的点出发,严格向右走到达最右点再严格向左回到最左点。问最短路径是多少?分析: 1.首先需要将原问题转化为,两个人A、B同时从最左边的点出发,一起严格向最右点走,且经过所有点一次(除了最左点和最右点)。这与原题的要求具有等价性。 2.先自然想到用dp(i,j)表示A走到i,B走到j时的状态还需要走多远到终点(注意表示的是还有多少到终转载 2017-07-27 17:00:06 · 226 阅读 · 0 评论 -
The Tower of Babylon UVa 437
题目大意有n种长宽高为x,y,z的砖头,每种都有无数个。砖头可以用不同姿势的方向来盖。砖头a以某种姿势可以盖在砖头b上,当且仅当a的底部的长宽都要比b的底部长宽要小。问最高可以建多高?思路一个类型的木头能否搭在另一个类型的木头上是典型的二元关系,若i能搭在j上,就在j到i连一条有向边,形成一张图,问题就变成了求解图上的最长路,#include#include#inc转载 2017-07-27 16:57:34 · 225 阅读 · 0 评论 -
A Spy in the Metro uva1025
题意:一个间谍要从第一个车站到第n个车站去会见另一个,在是期间有n个车站,有来回的车站,让你在时间T内时到达n,并且等车时间最短,输出最短等车时间。思路:先用一个has_train[t][i][0]来表示在t时刻,在车站i,是否有往右开的车。同理,has_train[t][i][1]用来保存是否有往左开的车。 用d(i,j)表示时刻i,你在车站j,最少还需要等待多长时间。边转载 2017-07-27 16:50:51 · 246 阅读 · 0 评论 -
寻宝之后
迷宫是一个n*m的字符矩阵。小明在这个矩阵的左上角,只能向下和向右走,去和在矩阵右下角的小芳会合。小明必须将他走过的路径上的,经过的字符收集起来。如果到右下角时他收集到的这些字符连在一起是回文的,那么他就能够走出这个迷宫,否则他就会掉进陷阱出不来。小明想知道有多少条路径能够让他走出这个迷宫。由于答案可能很大,请对1000000007取模。输入输出格式输入格式:原创 2017-08-02 19:39:16 · 402 阅读 · 0 评论 -
中国象棋 洛谷p2051
题目描述这次小可可想解决的难题和中国象棋有关,在一个N行M列的棋盘上,让你放若干个炮(可以是0个),使得没有一个炮可以攻击到另一个炮,请问有多少种放置方法。大家肯定很清楚,在中国象棋中炮的行走方式是:一个炮攻击到另一个炮,当且仅当它们在同一行或同一列中,且它们之间恰好 有一个棋子。你也来和小可可一起锻炼一下思维吧!输入输出格式输入格式:一行包含两个整数N,M,之间由一个空格隔开。原创 2017-08-16 15:54:32 · 360 阅读 · 0 评论 -
遗忘口令
题目描述就像每个人都会遇到的问题一样,贝西忘了在cowtube 上的口令。不过,她还记着一些关于口令的信息。首先,她确定口令由小写字母组成,长度为L。其次,这个密码是由几个单词组合而成的。贝西一共认识N 个单词,每个单词长度都在1 到20 之间,由小写字母组成。最后,贝西还记得口令上一些位置的字母,她会尽量提供记住的部分,如果有些位置上的字母不记得了,就用?代替。给定贝西记原创 2017-08-08 19:51:19 · 396 阅读 · 0 评论 -
Corn Fields poj3254
题意:给出一个n行m列的草地,1表示肥沃,0表示贫瘠,现在要把一些牛放在肥沃的草地上,但是要求所有牛不能相邻,问你有多少种放法。分析:假如我们知道第 i-1 行的所有的可以放的情况,那么对于第 i 行的可以放的一种情况,我们只要判断它和 i - 1 行的所有情况的能不能满足题目的所有牛不相邻,如果有种中满足,那么对于 i 行的这一中情况有 x 中放法。前面分析可知满足子状态,我们我转载 2017-07-21 10:44:14 · 226 阅读 · 0 评论 -
Bride the Prisoners
题意: 有P个相邻的牢房(序号1,2,…,P),每个牢房中关押着犯人一名现在要释放Q个牢房中的犯人(序号给出),释放后牢房为空每次释放一名时需要依次向左向右给其他牢房犯人每人一枚金币直到遇到空牢房为止 可以按照任何顺序释放犯人,输出所需最小金币数。 思路:为方便理解,预处理出序号为0和序号为P+1的空牢房。可以想到,如若释放了序号i(0 故可以用动态转载 2017-07-13 15:56:19 · 386 阅读 · 0 评论 -
Millionaire
题意:最开始你有x元钱,要进行M轮赌博。每一轮赢的概率为P,你可以选择赌与不赌,如果赌也可以将所持的任意一部分钱作为赌注(可以是整数,也可以是小数)。如果赢了,赌注将翻倍;输了赌注则没了。在M轮赌博结束后,如果你持有的钱在100万元以上,就可以把这些钱带回家。问:当你采取最优策略时,获得100万元以上的钱并带回家的概率是多少。思路: 将最后一场赌局开始时的钱数分成三段,0~500000,5转载 2017-07-13 15:58:07 · 696 阅读 · 0 评论 -
Lighting System Design UVa 11400
题目大意:有一个照明系统需要用到n种灯,每种灯的电压为V,电源费用K,每个灯泡费用为C,需要该灯的数量为L。注意到,电压相同的灯泡只需要共享一个对应的电源即可,还有电压低的灯泡可以被电压高的灯泡替代。为了节约成本,你将设计一种系统,使之最便宜。分析:首先需要明确一种灯泡要么全部换,要么不换。如果换一部分的话,首先电源费用得不到节约,那么节约的部分就只来自于换的那部分灯泡,既然可以节约钱转载 2017-07-27 17:42:38 · 218 阅读 · 0 评论 -
有线电视网 洛谷p1273
题目描述某收费有线电视网计划转播一场重要的足球比赛。他们的转播网和用户终端构成一棵树状结构,这棵树的根结点位于足球比赛的现场,树叶为各个用户终端,其他中转站为该树的内部节点。从转播站到转播站以及从转播站到所有用户终端的信号传输费用都是已知的,一场转播的总费用等于传输信号的费用总和。现在每个用户都准备了一笔费用想观看这场精彩的足球比赛,有线电视网有权决定给哪些用户提供信号而不给哪些用户提原创 2017-08-12 17:10:37 · 348 阅读 · 0 评论