自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Lhq

  • 博客(86)
  • 收藏
  • 关注

转载 一些DP的优化文章

决策单调性:https://www.cnblogs.com/Winniechen/p/9218864.htmlDP的各种优化(动态规划,决策单调性,斜率优化,带权二分,单调栈,单调队列):https://www.cnblogs.com/flashhu/p/9480669.html浅谈带权二分或者斜率凸优化:https://www.cnblogs.com/nietzsche-oier/p/...

2018-10-16 16:48:20 256

原创 hihocold #1466 : 后缀自动机六·重复旋律9

这道题目自己傻傻的写拓扑排序写错了,直接写成了,细节MAX 这里在贴一个别人的好代码Mine:#include<cstdio>#include<algorithm>#include<cstring>using namespace std;typedef long long LL;const int N=500010,Max_SG=26;...

2018-03-06 17:57:12 407 1

原创 2693: jzptab

https://www.cnblogs.com/ljh2000-jump/p/6358095.html 这个链接推得和我一样,线性筛F函数 最后算的时候不能T 和F(T)都求前缀和 我们可以把F[T]=F[T]*T; 这样就可以求了;#include<cstdio>#include<algorithm>#include<cstring>using namespace std;type

2018-01-04 20:25:18 295

原创 Mobius反演

2440: [中山市选2011]完全平方数 最直观的想法是容斥,x-x/(pi)^2+x/(pi*pj)^2…… 但是最坏情况下可能有O(2^p) ,虽然很快就会超过x,还是很快的, 换一种方法来分析,我们只要某些质数的乘积来算,那么mu[i]!=0的i就是符合要求的数字,而其他的+-号由于mu[i]相同,所以直接ans+=x/(i*i)*mu[i]即可.3529: [Sdoi2014]数表

2018-01-04 18:50:51 329

原创 5140: [Usaco2017 Dec]A Pie for a Pie

题目:两只牛,牛A和牛B,他们对水果派的品味不同,每个人都有n<=1e5个派,每个派都有两种得分a[i], b[i],其中a[i]是牛A对该派的评分,b[i]是牛B的评分, 0 <= a[i], b[i] <= 1e9。两只牛开始礼尚往来,从牛A开始,它选一个pie给牛B,设这个pie的评分是(a[i], b[i])。此时牛B为了不失礼节(不太小气,也不要太谄媚)要选出一个B 评分在[b[i],

2018-01-04 10:49:23 439

原创 吐槽

概率DP千万不要加if (f[...]<1e-8) continue;我的本意是为0的话不做可以加速,结果到了后面概率会小于1e-8是答案偏小!!

2017-10-21 15:29:57 268

原创 51nod 1407

一道非常不错的容斥题(也有利于理解前缀和) 下面我将两种方法: 1.一般在网上搜到的方法,首先算出1406题的答案,dp[i]表示n个数中满足x&i==i的x有几个,然后我们考虑 dp[i]所代表的所有数互相&,出去空集外共有2dp[i]2^{dp[i]}种,这些方案代表了所有&和包含i的方案,即i上的1都有,其他的任意,这样我们就可以容斥了,Ans=所有方案数-不合法的方案数,不合法的怎么算?

2017-10-19 06:52:39 272

转载 BZOJ3943: [Usaco2015 Feb]SuperBull

神题,花样叫人理解MST,American出的题很有创意。 http://blog.csdn.net/cynthia_wjyi/article/details/49401895 这位博主讲得很好。代码不贴了

2017-10-17 18:32:09 275

原创 【树形DP】宝藏

Solution挺有意思的一道树形DP,我理解了3个小时…… 这道题目我们想一想后会发现大致要记录两个值:从i开始走再回到i的最大价值,从i开始不回到i的最大价值。 我们用方法一表示走某颗子树走下去再走回来,方法二表示走下去不回来。 我们用f[i]f[i]表示从i开始往子树走,再走回来的最大价值,(可以走很多棵子树),Max[i]Max[i]表示走每棵子树用方法二和方法一的价值之差,显然方法二

2017-09-19 20:14:38 506

原创 【NOIP2016】Day1

SolutionT1模拟,可以用异或简化代码T2这里讲一下正解,网上题解也有很多 我们把路径插成,u->lca , lca->v, 我们先看u->lca这一条,若这条路径上的点x能观察到u,那么: deep[u]−deep[x]=T[x]deep[u]-deep[x]=T[x] 移项后得:deep[u]=deep[x]+T[x]deep[u]=deep[x]+T[x] 发现右边是一个之

2017-09-10 19:14:19 349

转载 【c++】memset定义极值在竞赛中的应用

1.各类应用:http://blog.csdn.net/Vmurder/article/details/46537613 2.double类型初始化各种字节的大小: http://blog.csdn.net/popoqqq/article/details/38926889感谢两位博主

2017-09-08 21:00:09 269

原创 【HIT1917】 Peaceful Commission

Solution2-sat模板题,但是暴力也可以过,还可以过HDU上的字典序。

2017-09-03 14:17:05 343

原创 【NOIP2015D2】 解题报告

这次模拟考试订正历程很悲催……SolutionT1:很经典的二分答案,直接切掉 T2:听说过是DP,考试时先写了一个dfs,发现要记录前一个有没有选来看后面的是否连在一起,f[i][j][k][sta]表示A数组前i个,B数组前j个,分成k段,最后两个是否匹配的方案数,一开始忘记选了也可以分为2段,总的方程就是比较a[i+1]和b[j+1],若不同,只能推到f[i+1][j][k][0],若相同,

2017-09-02 22:05:45 294

原创 【HDU 4081】 Qin Shi Huang's National Road System

Solution要求最大的A/B,贪心的想就是A最大,B,最小 考虑B最小,就求最小生成树 A最大怎么办?只能枚举边,那么便不再生成树上怎么办?次小生成树!f[i][j]表示树上i到j的边上的最大值,则ans=max{ans,A/(B-f[i][j])}CODE#include<bits/stdc++.h>using namespace std;const int MAXN=1010;in

2017-08-28 21:04:06 298

原创 【NOIP2003 提高组 T1 神经网络】

Solution拓扑。 tips: 1.最后输出要输出c[i]>0的 2.if (c[i]>0) 要在里面判断 不然会少进,WA了无数次 之前就把注释处的写在了循环处。。 for (int i=x;i<y;i++) { for (int j=Head[q[i]];j;j=edge[j].next) {

2017-08-24 21:04:54 364

原创 【图论经典题】NOIP2013 普及组 T4 车站分级(两种方法)

Solution主要是按车站分级(就是按照题目意思来)和按车分级两种方法。方法一:按车站分级,我们知道一辆车经过的车站的等级一定大于没经过的车站的等级,这样就可以根据大小关系建议一张拓扑图,然后拓扑排序。 时间复杂度:O(MN^2) 但是常数很小可以过方法二: http://blog.csdn.net/ta201314/article/details/46659541 我们可以这样理解题意:每

2017-08-24 19:19:21 587

原创 【HDU 4734】 F(x)

还是记忆化数位DP,到现在我发现记忆化的写法就是一个大暴力的优化,记录的就是到现在接下来继续搜会有的结果,解释这样,所以在某些题目上只能多花点空间,而且数组的含义也有点区别。

2017-08-17 19:00:02 290

原创 【HDU3652】B-number

同Bomb,多记一个sum为%13后的余数

2017-08-16 19:43:16 201

原创 【HDU3709】 Balanced Number

一开始想到的是f[len][pivot][j][k]记录到len,支点为pivot,左边j,右边k的值 看过题解后发现可以直接记录j-k为power_matrix,这样可以少一维,还可以在为负数时剪枝。

2017-08-16 19:35:22 207

原创 【POJ3252】 Round Numbers

这道题目让我知道了为什么模板里要有lead记录前导0,一开始没记录偏大。

2017-08-16 19:01:41 198

原创 【HDU3555】 Bomb

记忆化搜索数位DP模板题,写记忆化真的简单

2017-08-16 18:58:47 191

原创 【HDU4352】 XHXJ's LIS

数位DP+LIS+状压 解题前奏:nlogn LIS 具体:记录前len位的LIS情况,可以预处理sta+i后的newsta,然后DFS,DP写超时(10000组)

2017-08-16 18:57:12 370

转载 【数位DP模板】

我发现别人的数位DP都是记忆化搜索的,而且不用每次memset,于是在网上找了个模板,很精妙 http://blog.csdn.net/just_sort/article/details/52169718

2017-08-11 19:10:31 230

原创 【CodeForces 55D】Beautiful number 数位DP

Problemhttps://vjudge.net/problem/CodeForces-55DSolutionhttp://blog.csdn.net/lhq_er/article/details/77017024 代码更新过了,这个链接里的只能做到101810^{18},这个能到9∗10189*10^{18}CODE/* * @key words: digit DP * @tested o

2017-08-11 17:57:06 279

原创 【HDU2089】不要62 数位DP

Problemhttp://acm.hdu.edu.cn/showproblem.php?pid=2089 https://vjudge.net/problem/HDU-2089Solutionf[i][0|1][0|1]表示到i位,第i位是否是6,是否“紧贴”, 水题。CODE/* * @key words: digit DP * @tested on: HDU 2089 * @Aut

2017-08-11 17:54:42 287

原创 【ZOJ3541】The Last Puzzle 区间DP+贪心

ProblemZOJ Vjudge Tips:不要去HDU,评测好像有问题Solution1.一个很重要的贪心性质:骑士只能从区间的两边开始走,画一下图就知道了。 2.dp[l][r][0]表示从l走起走完这个区间所取得最少时间,dp[l][r][1]则是从r走起。 3.dp[l][r][0]=min{dp[l+1][r][0]+d[l+1]-d[l],dp[l+1][r][1]+d[r]-

2017-08-11 16:40:16 330

原创 【CodeForces 149D Coloring Barkets】【区间DP/递推】

Problem传送门Solution这道题目很显然是类似于区间DP的,但是状态上要记录最旁边两个的颜色,为什么?因为你要判断更外层染什么颜色。 Tips: 1.除了l+1=r的情况,其他都要枚举所有的颜色可能,因为其他情况最外层两个不一定匹配,颜色可能要枚举,不可能的情况自然是0,中间不会多的。 2.当最外面不匹配时肯定是多个括号并列,用乘法原理计算,我已开始把 int x=match[l]

2017-08-11 09:47:42 225

原创 【POI2011】 Meteors 整体二分(写代码时的坑点)

Solution这道题目算是整体二分的经典题目吧,一个询问的话暴力都可以,但多个怎么办?我们发现mid场流星雨后可行的国家只可能在l~mid场,不可行的只能在mid+1~r场,答案具有二分性,国家也可以二分,那么我们对两种国家分别递归即可。 Tips: 1.这道题目rlz老师讲的时候是差分,说快很多,其实还是树状数组,不能单纯的线扫,每次线扫的话要超时,应该是区间修改的树状数组中的差分。 2.

2017-08-10 16:19:03 448

原创 【NOIP2017】Day7

SolutionT1: 推了一个考试的数学公式,贼复杂,事实上正解也挺复杂的,什么二次函数求和?此处%ljn大佬的思路+精妙的代码,思路:6个点最多分成5的区域,注意左闭右开后枚举每个机器人在那个区间,在分类讨论1.3个在同一区间2.两个在同一区间3.在不同区间,分别计算,这个好算多了 T2: 数位DP,考试前讲过,A了,CF上的题 http://www.cnblogs.com/vongan

2017-08-09 21:05:46 484

原创 【NOIP2017】Day6

SolutionT1: 设f[i][j]为i张牌,j张黑牌的期望张数,f[i][j]==i/j∗f[i−1][j−1]f[i][j]==i/j*f[i-1][j-1]数学归纳法可以证明f[n][m]=m/(n-m+1)。 T2: 最难的一题(我觉得),首先这是一道DP,但最好要转化, 令x′=x+yx'=x+y y′=x−yy'=x-y 这样曼哈顿距离就变成了max{|x1−x2|,

2017-08-09 20:54:31 383

原创 【NOIP2017】Day5

SolutionT1: 我们发现对于区间[l,r]只能有两个棋子,所以记f[i][j][k]为放到i步,最近的为j,第二近的为k,方案数。f[i+1][j][k]+=f[i][j][k]f[i+1][j][k]+=f[i][j][k]f[i+1][i+1][j]+=f[i][j][k]([k,i+1]不在一个限制内部)f[i+1][i+1][j]+=f[i][j][k]([k,i+1]不在一个限制

2017-08-09 20:36:03 319

原创 【NOIP2017】Day4

SolutionT1:首先可以想到分成两组暴搜+剪枝得到所有可能,然后meeting in middle,尴尬的是时间与空间,时间从2s—>5s—>12s(评测时才改的,考试时只到5s),对于时间12s可以直接快排,226≈670000002^{26} \approx 67000000 512M可以开两个刚刚好,考场上我以为快排过不了,就写了个基数排序,结果要开三个数组,空间炸了……标称方法是一边2

2017-08-09 19:56:11 484

原创 【NOIP2017】Day3

题目传送门(请点击开头目录) http://blog.csdn.net/lhq_er/article/details/76693851SolutionT1:模拟一个栈的进出,最后判断是否有剩余即可 T2:求最大全1矩阵,方法是求出极大矩阵后更新,维护单调栈,可以搜,网上有很多 T3:仔细考虑后发现时要求这样的二元组(s,t)是的1—>s—>t—>1, 我们可以枚举(s,t)再跑最短路(去掉

2017-08-04 21:04:59 405

原创 【NOIP2017】Day2

题目传送门(请点击开头目录) http://blog.csdn.net/lhq_er/article/details/76693851SolutionT1:乱搞题 T2:两两分组,meeting in middle,虽然我是二分,还把inv写错了(没模p) T3:对于len=1可以bfs,len<=4其实也可以,因为不会碰到身体,len>4时我们考虑bfs时的vis在这里为什么不可以呢?因为

2017-08-04 20:46:43 1201

原创 【NOIP2017】Day1

题目传送门(请点击开头目录) http://blog.csdn.net/lhq_er/article/details/76693851SolutionT1:排完序后贪心比较 T2:dp[t][i][j]表示t时间能否一个为一个为j,转移方程很好写。 T3: 30%:建图后最小生成树 100%:Kruskal慢在最所有边排序,其实很多边权值是相同的,所以对行列单独排序,再取,去的时候要注意去重

2017-08-04 20:37:35 1464

原创 【NOIP2017】SummerTraining0710

T1 并查集/二分图染色 T2 DP+矩阵乘法优化T3 数位DP100+100+30=230 rank13想出了T2矩阵乘法好开森,然并卵……%sqj wsj zhz大佬AK怒喷水题后附zhz大佬的蔑视

2017-07-31 18:08:48 355

原创 【NOIP2017】SummerTraining0707

这是一套大水题,8人AK,我100+0+0=100 rank29 T1乱搞题 T2树形DP,我不知道哪里搞炸了 T3更水,表示看到仙人掌就没去想了(其实是没想出)看题解或代码的看目录,有索引。

2017-07-31 17:53:48 401

原创 【NOIP2017】SummerTraining0706

又来补之前的考试了……这套题目订正起来不是很难,但现场…… 10+0+40=50,rank22 T1不会求最大的平均长度,原来是二分+判圈,做题太少啊 T2是一道不难的DP,从头开始推很简单,写了一篇专门的blog T3数据结构题,唯一看出算法的,卡在了一些小地方…… %xqj AC T1 T2 %lzw AC T3

2017-07-31 17:42:54 269

原创 【NOIP2017SummerTraining0705】

T1正解KMP Next数组利用,n^2大暴力水过T2 dp??乱搞?? 只水了50T3 组合数? 有点难,但不是很难。 现场0分,部分分都没拿。

2017-07-31 17:24:17 402

原创 【NOIP2017】SummerTraining0721

T1数论欧拉函数,T2DP+空间优化+时间优化,T3生成树?凸包!

2017-07-28 08:24:22 288

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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