04 2018 档案

摘要:第一次写这种二分来优化决策单调性的问题。。。。 调了好久,,,各种细节问题 显然有DP方程: $f[i]=min(f[j] + qpow(abs(sum[i] - sum[j] - L - 1)));$ 其中f[i]代表到了第i个句子的最小答案 qpow用于处理^p sum为前缀和 (同时为了处理句 阅读全文
posted @ 2018-04-26 20:08 ww3113306 阅读(257) 评论(0) 推荐(0)
摘要:斜率优化DP先考虑朴素DP方程,f[i][k]代表第k个厂建在i棵树那里的最小代价,最后答案为f[n+1][3];f[i][k]=min(f[j][k-1] + 把j+1~i的树都运到i的代价)首先注意到“把j+1~i的树都运到i的代价”不太方便表达,每次都暴力计算显然是无法承受的,于是考虑前缀和优 阅读全文
posted @ 2018-04-22 13:49 ww3113306 阅读(302) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2018-04-18 21:01 ww3113306 阅读(1) 评论(0) 推荐(0)
摘要:不是很懂为什么luogu标签是树形DP,感觉我想的就是一个贪心啊。。。 随机造几组数据,我们发现贪心的确可以得到最优解,那么为什么呢? 假设将所有时态贪心的调整是对的,那么如果一个节点的各个儿子时态不同,那么强行统一,为什么可以假设是对的?因为观察到在一个点的上方+1,对它的子树的相对关系的没有影响 阅读全文
posted @ 2018-04-17 17:56 ww3113306 阅读(277) 评论(0) 推荐(0)
摘要:表示每次看见期望的题就很懵逼。。。 但是这题感觉还是值得一做,有可借鉴之处 要是下面这段文字格式不一样的话(虽然好像的确不一样,我也不知道为什么,是直接从代码里面复制出来的,因为我一般都是习惯在代码里面敲注释。。。 还是比较妙的。 首先有一个贪心的最优策略,由于每盏灯最多开一次(两次就相当于没开), 阅读全文
posted @ 2018-04-17 16:28 ww3113306 阅读(191) 评论(0) 推荐(0)
摘要:感觉是一道很妙的树形DP题,充分利用到了树的性质(虽然说点分治也可以做,,,,但是本蒟蒻不会啊) 然而某Twilight_Sx大佬表示这道题真的非常水,,,本蒟蒻也只能瑟瑟发抖了 本蒟蒻表示还是要经过一些思考的吧 虽然说是要获取概率,但是要输出分数形式,显然直接算可能获胜的次数再除所有可能,并且用g 阅读全文
posted @ 2018-04-09 22:21 ww3113306 阅读(182) 评论(0) 推荐(0)
摘要:DP,递推,组合数 其实相当于就是一个递推推式子,然后要用到一点组合数的知识 一道很妙的题,因为不能互相攻击,所以任意行列不能有超过两个炮 首先令f[i][j][k]代表前i行,有j列为一个炮,有k列为两个炮的方案 那么有如下转移: 1,这行不放炮,add+=f[i-1][j][k]; 2,放一个炮 阅读全文
posted @ 2018-04-09 22:12 ww3113306 阅读(210) 评论(0) 推荐(0)
摘要:公式:A(n,n)*A(n+1,2)*A(n+3,m) + A(n,n)*C(m,1)*A(2,2)*C(n+1,1)*A(n+2,m-1) 分情况讨论推出公式 前者为无论何时都合法的,后者为先不合法,然后再合法的(两个老师先站在一 起,然后一个女生 插进来,所以要把这3个人看成一个整体,然后老师可以左右换,所以乘2,女生 就是m选1,然后整体再插入队伍 最后得到上面的式子由于答案较大... 阅读全文
posted @ 2018-04-09 21:23 ww3113306 阅读(265) 评论(0) 推荐(0)
摘要:一道最小生成树经典题 由于是最靠近的两个部落尽可能远,如果我们先处理出任意两个居住点之间的距离并将其当做边,那么我们可以发现,因为在一个部落里面的边是不用计入答案的,所以应该要尽量把小边放在一个部落里, 由此,我们可以想到最小生成树,也是每次都优先选小的边,只不过这里要求的是尽可能远,所以就相当于是 阅读全文
posted @ 2018-04-09 21:21 ww3113306 阅读(230) 评论(0) 推荐(0)
摘要:差分 一开始竟然想分情况讨论来差分,然后发现各自情况要分析, 就是为了解决中间节点重复计算的问题, 结果 最后一想,中间重复计算了一次,那我最后减掉不就好了么,,, 那这就是一道差分裸题了(这是唯一不同的地方) 由于是树上差分,所以要先求出所有需要的LCA,然后就是树上差分的套路了 这里由于进来后再 阅读全文
posted @ 2018-04-09 21:11 ww3113306 阅读(210) 评论(0) 推荐(0)
摘要:由于相差不超过k才可以放在一起,要判断不超过k这个条件,显然我们需要排序 首先我们需要一个f数组,f[i]意义看代码开头注释, 假设我们可以选择的某一个区间是a[l]~a[r](已排序且最优(最长的意思)),那么这个区间要符合这样一个性质: a[r]-a[l]<=k 移项一下, a[r]<=k+a[ 阅读全文
posted @ 2018-04-09 21:05 ww3113306 阅读(295) 评论(0) 推荐(0)
摘要:首先由于不会有三条对角线交于一点,所以过某一个交点有且只能有2条对角线 而这两条对角线实质上是确定了4个顶点(也可以看做是一个四边形的两条对角线交于一点,求四边形的数量)。 因此我们只需要确定4个顶点就得到了这个唯一确定的交点。 因此我们只需要求这样4个顶点的搭配有多少个了 也就是从n个顶点中取4个 阅读全文
posted @ 2018-04-09 21:04 ww3113306 阅读(180) 评论(0) 推荐(0)
摘要:非常妙的树形DP:由于n很小,我们可以枚举每一个点作为第一个节点,计算其时间花费 那么问题就转化为对于给点节点求花费时间。 通过观察,显然我们会发现先传给花费时间多的人更加合算,因为这样可以最大限度的避免 一个人还在辛苦的传递信息,另一个人却悠闲的喝下午茶(雾)的局面 所以我们可以每次都记录下对于一 阅读全文
posted @ 2018-04-09 21:03 ww3113306 阅读(332) 评论(0) 推荐(0)
摘要:带修改的莫队,还没做过的莫队建议先做HH的项链(板子题) 这里多了一个修改,首先我们要相信一个真理:暴力出奇迹 莫队就是相当与对暴力的一个优化, 于是对于每个询问,我们标记它的时间(也就是前面有几个修改) 然后像普通莫队一样做,如果时间不符合,那就暴力修改or暴力撤销 比如说我们用now记录现在的X 阅读全文
posted @ 2018-04-09 21:01 ww3113306 阅读(237) 评论(0) 推荐(0)
摘要:推导过程 : 组合数+容斥原理+gcd 正确做法是暴力的一种优化,ans=所有情况 - 平行坐标轴的三点共线 - 斜线三点共线 如果快速求斜线三点共线: 首先要知道一个结论,对于点(a,b) (x,y)连成的线段而言(其中a>x,b>y), 在它们中间有gcd(a-x,b-x)-1个整点,因此基本的 阅读全文
posted @ 2018-04-09 21:00 ww3113306 阅读(140) 评论(0) 推荐(0)
摘要:表示调这道题已经调到失智了。。。 因为昨天刚写完线段树2,所以pushdown就写得和线段树2一模一样,,,,于是,,,成功的在pushdown的地方,,,各种错 下面讲做法: 首先我们可以观察到每个骑士都是独立的,因此对于每个城池我们可以建一个堆,堆中维护的是在这个城池的骑士。 维护一个小根堆,所 阅读全文
posted @ 2018-04-09 12:33 ww3113306 阅读(196) 评论(0) 推荐(0)
摘要:做的第一道2-Sat的题emmm。。。 由题意可知,每个评委的两个要求中,至少要满足一个, 因此,如果有一个不满足,那另一个必定要满足 所以对于每道菜我们拆两个点,一个是满族口味,一个是汉族口味, 如果我们要不满足满族口味,也就意味着我们要做汉族口味 所以照着每位评委的菜连边即可 比如说一个评委要求 阅读全文
posted @ 2018-04-09 10:28 ww3113306 阅读(168) 评论(0) 推荐(0)
摘要:洛谷上有2道相同的题目(基本是完全相同的,输入输出格式略有不同) ~~~题面~~~ ~~~题面~~~ CDQ分治 首先由于删除是很不好处理的,所以我们把删除改为插入,然后输出的时候倒着输出即可 首先这是一个类似于3维偏序的问题: 那么为了理解我的算法,这里先放出我对三维偏序的理解。 三维偏序实质上是 阅读全文
posted @ 2018-04-07 13:23 ww3113306 阅读(684) 评论(2) 推荐(0)
摘要:发现写算法专题老是写不动,,,, 所以就先把我在luogu上的题解搬过来吧! 题目大意:查询区间众数,无修改,强制在线 乍一看是一道恐怖的题,仔细一看发现并没有那么难; 大致思路是这样的,首先我们要充分发挥分块暴力大法好的精神 先暴力预处理出每个块内每种蒲公英的个数, 然后求出对每个块而言的前缀和, 阅读全文
posted @ 2018-04-07 13:19 ww3113306 阅读(249) 评论(0) 推荐(0)

知识共享许可协议
本作品采用知识共享署名-非商业性使用-禁止演绎 3.0 未本地化版本许可协议进行许可。