lambda QAQ

fmap :: (q -> a) -> f q -> f a

sdut 3254 stars

给出平面坐标的n(n≤400)n(n\le 400)个整数点(坐标为(x,y)(0≤x,y≤n)(x,y)(0\le x,y\le n),求最小的边长为整数的能至少覆盖kk个点的矩形的面积考虑到n只有400,我们可以枚举矩形的平行于x轴的两条边的坐标,这样的话就退化为了给出一个数组求一个最小的区间...

2016-05-30 17:42:35

阅读数:270

评论数:0

poj 1015 Jury Compromise

poj 1015 Jury Compromise有n(n≤200)n(n\le 200)个人,每个人有两个权值D,P(0≤D,P≤20)D,P(0\le D,P\le20),从中挑选出m(m≤20)m(m\le 20)个,最小化|∑D−∑P||\sum D-\sum P|,如果有多解的话,最大化∑...

2016-05-27 21:03:15

阅读数:149

评论数:0

hdu 1074 Doing Homework

给出n(n≤15)n(n\le 15)个作业的需要完成的时间和deadline,求一个作业的排列,使得最后被扣的分最少,对于每个作业,如果在deadline之后完成,超过deadline的时间就是被扣的分数,当然在deadline之前完成就不扣分了因为是要求一个排列,而且O(2n)O(2^n)的复...

2016-05-26 17:03:55

阅读数:174

评论数:0

Hdu 1024 Max Sum Plus Plus

给你nn个数的序列,在这个序列中取mm个不相交的区间,使得这些区间的数的和最大题中没有给mm的范围。。。我以为是O(n×m)O(n \times m)会TLE的。。结果过了。。定义状态就是dpi,jdp_{i,j}为前i个数分成了j段且最后一段的最后一个数就是第i个数的最优解然后就可以转移了dpi...

2016-05-26 16:32:43

阅读数:144

评论数:0

poj 3666  Making the Grade

这个题刚看到的时候也是没有什么想法然后注意到了只有20002000个位置然后有了一个O(n3)O(n^3)的做法(为了简化问题我们只考虑把点填成单调递减的,因为对于递增的,我们把输入反过来再做一遍就好了)首先我们把给出的路的长度离散化一下,因为对于一个位置,要么不动,要么就填到一个已经有的高度定义...

2016-05-25 21:08:16

阅读数:240

评论数:0

hdu 1069 Monkey and Banana

有n种形状的长方体,每种都有无限个,要把这些长方体叠起来,使得上层的长方体的底面被完全包含在下次的底面上,问最高能叠出来的高度是多少对于每一个给出的形状,我们枚举那一面是底面把它存起来然后按照长方体的底面面积进行排序定义一个长方体A小于长方体B当且仅当A的底面能被B包含(也就是A可以按照题目要求垒...

2016-05-25 19:43:28

阅读数:125

评论数:0

hdu 1176 免费馅饼

定义cookx,Tcook_{x,T}为在TT时刻掉在xx位置的馅饼的数量定义dpx,Tdp_{x,T}为在TT时刻站在xx位置的时候能拿到的最多的馅饼数量那么有转移方程dpx,T=cookx,T+max(dpx−1,T−1,dpx,T−1,dpx+1,T−1)dp_{x,T} = cook_{x...

2016-05-25 18:49:04

阅读数:132

评论数:0

hdu 1078  FatMouse and Cheese

给出一个n×nn \times n的矩阵,找出从左上角开始的点的值严格递增路径并且路径上的任何一对相邻点满足横坐标相等并且纵标差的绝对值小于k(或者纵坐标相等并且横坐标的差的绝对值小于k),并且要求点的值的和最大对于矩阵的每一个点对,如果xx能走到yy,就在xx到yy之间连一个边的话,我们最后可以...

2016-05-25 16:45:35

阅读数:307

评论数:0

poj 3616 Milking Time

给出mm个区间,每个区间有一个权值选出若干个区间,使得区间两两不重合并且区间的距离大于rr,区间的权值和最大求权值和注意到区间只有10001000个,所以离散化一下就可以O(m2)O(m^2)的做了代码也很短#include<vector> #include<cstdio>...

2016-05-25 15:57:08

阅读数:124

评论数:0

hdu 1160 FatMouse's Speed

给你不超过1000个老鼠的体重和速度,要求找出最长的老鼠序列使得体重严格递增,速度严格递减首先按照体重从大到小排序,然后就是裸的LISLIS了代码也很短#include<vector> #include<cstdio> #include<cstring> #in...

2016-05-25 15:19:02

阅读数:141

评论数:0

Ural 1117 Hierarchy

这个题说的是给一个满二叉树,按照中序遍历的顺序给二叉树的节点从1开始编号从一个点到另一个点传送所花费的时间定义为这两个点之间路径的节点个数并且一个点只能直接传送到和这个点编号相邻的点,比如xx直接传送到x−1x-1或x+1x+1问需要多少时间才能从给出的起点传送到终点ural的题真长啊。。。又臭又...

2016-05-25 08:33:18

阅读数:274

评论数:0

poj 2486 Apple Tree

给出一个树,每次跨过一条边记做走一步,可以往回走,每个点有一些苹果,问从根出发在kk步之内最多能拿到多少苹果对于每一个节点,我们记VgoxVgo_x为从这个点出发走x步不回到这个点最多能拿到的苹果数VbackxVback_x为从这个点出发走x步回到这个点最多能拿到的苹果数ValVal为这个点上的苹...

2016-05-24 18:19:40

阅读数:170

评论数:0

Ural 1658 Sum of Digits

求最小的,各个数位的和为S1S_1,各个数位的平方和为S2S_2的数一眼看下来只会求方案数啊GG,最小的该怎么办呢然后可以想到如果一个数的位数少,他肯定是短的所以我们要找到最短位的那个数应该就是答案了dp的时候顺便维护一下是用哪个数字转移过来的,回溯过去记录答案最后再把拥有的数从小到大排一下,应该...

2016-05-23 21:19:42

阅读数:190

评论数:0

Ural 1081 Binary Lexicographic Sequence

数位dp+二分找出第k个二进制表示中没有相邻的1的数看起来很不好做是不是,但是作为数位dp,我们还是可以处理小于x的二进制表示没有相邻1的数个数这部分还是挺简单的?然后我们就可以二分去找答案了~感觉这个都是套路,还是见代码吧o(` • ~ • ′。)o #include<bits/stdc+...

2016-05-23 17:24:11

阅读数:179

评论数:0

Astar Round2A 1003 Snacks

将树按照dfs序映射到区间上,每个点的值代表这个点到根的路径上的点权和因为子树的dfs序连续,所以查询其实就是查询区间最大值更新的话就是给区间加一个数(因为更新了x的点权的时候会对它的子树中的所有点有影响这一些都可以用线段树维护具体见代码#include<cstdio> #includ...

2016-05-22 20:51:56

阅读数:133

评论数:0

Astar Round2A 1002

状压dp因为nn比较小,我们可以考虑O(2n)O(2^n)的算法(也就是状态压缩具体的,dpmask,ed,lendp_{mask,ed,len}表示填了第00到lenlen个数,最后一个数是第eded个,前面用的数在maskmask里面的最优解因为题目中有限制某一些位必须是某一些数,所以在转移过...

2016-05-21 18:10:44

阅读数:201

评论数:0

Ural 1036 Lucky Tickets

简单的dpss为奇数时答案为00ss为偶数时答案为长nn的各位之和为s/2s/2的方案数的平方状态其实就是长度和位和,然后转移一下就好了dpn,s=∑k=09[n≥1][s≥k]dpn−1,s−kdp_{n,s}=\sum\limits_{k=0}^9[n \ge 1][s\ge k]dp_{n-...

2016-05-21 12:06:12

阅读数:373

评论数:0

hdu 5238 Calculator

某线段树打模拟赛的时候不知道区间该维护什么东西使其变得可合并,然后就放着了赛后看了题解才知道这个题维护的是映射关系,感觉也是十分的厉害考虑一个算式a+4(mod7)=ba + 4 \pmod{7} = b我们发现来(mod7)\pmod{7}的同余系中,会有以下对应关系其实这就是一个映射具体的,...

2016-05-19 20:09:54

阅读数:222

评论数:0

hdu 4288 Coder

线段树单点更新,查询总的区间下标(mod5)=3\pmod{5}=3的数的和先离散化一下然后每个区间存一下这个区间下标(mod5)=k(0≤k≤5)\pmod{5}=k(0\le k\le5)的数的和,这个区间数的个数区间合并的时候考虑左区间数的个数然后怼起来就好了,具体见代码 #include&...

2016-05-18 15:47:11

阅读数:150

评论数:0

hdu 4578 Transformation

线段树支持给区间加cc,区间乘cc,区间的数都变成cc询问∑i=lrxi\sum\limits_{i=l}^rx_i,∑i=lrx2i\sum\limits_{i=l}^rx_i^2,∑i=lrx3i\sum\limits_{i=l}^rx_i^3写了4K的线段树。。区间节点维护区间和,区间平方和...

2016-05-18 13:44:24

阅读数:300

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭