![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
DP
ezoi_ly
这个作者很懒,什么都没留下…
展开
-
虚树+【BZOJ2286】【SDOI2011】消耗战(虚树)(DP)
先看一道题:【BZOJ2286】【SDOI2011】消耗战Description在一场战争中,战场由n个岛屿和n−1个桥梁组成,保证每两个岛屿间有且仅有一条路径可达。现在,我军已经侦查到敌军的总部在编号为1的岛屿,而且他们已经没有足够多的能源维系战斗,我军胜利在望。已知在其他k个岛屿上有丰富能源,为了防止敌军获取能源,我军的任务是炸毁一些桥梁,使得敌军不能到达任何能源丰富的岛屿。由于不同桥梁...原创 2019-12-06 21:28:01 · 114 阅读 · 0 评论 -
小凯的疑惑
首先,这道题正解的思路是从subtask2而得来的,所以先讲一下subtask2的做法。因为保证答案不超过long long,所以直接求最大权独立集即可:dp[u][0]表示u点一定不能取的答案,dp[u][1]表示u点对儿子没有限制的答案。dp[u][0]=max(dp[v][0],dp[v][1])dp[u][0]=max(dp[v][0],dp[v][1])dp[u][0]=max(...原创 2019-11-09 09:10:08 · 146 阅读 · 0 评论 -
子树问题(DP)
这题显然是DP首先,dp[i][j]dp[i][j]dp[i][j]表示树深度小于等于i,树的大小为j的有根树的数量$可以循环枚举根节点编号次大的子树的大小k。dp[i][j]=∑k=1j−1dp[i][j−k]∗dp[i−1][k]∗Cj−2k−1dp[i][j]=\sum^{j-1}_{k=1}dp[i][j-k]*dp[i-1][k]*C^{k-1}_{j-2}dp[i][j]=...原创 2019-11-02 11:10:59 · 156 阅读 · 0 评论 -
【POJ3744】Scout YYF I(矩阵快速幂)(期望DP)
DescriptionYYF是一个英勇的侦查员。现在他正在执行打入到敌方内部的危险任务。在解决了一系列的险情后,YYF到达了敌方著名的"地雷路"起始点。这条路非常长,上面被精心排布了不少地雷。一开始,YYF站在1的位置。对于后面的路程,YYF有p的概率向前走一步,或者有1−p的概率向前跳两步。现在问题来了。非常喜欢坑队友的情报部得到了每个地雷的位置,但他们不准备告诉YYF,反而请你计算YYF能安...原创 2019-11-02 07:58:21 · 62 阅读 · 0 评论 -
[loj2546][JSOI2018]潜入行动(树形DP)
题目描述外星人又双叒叕要攻打地球了,外星母舰已经向地球航行!这一次,JYY 已经联系好了黄金舰队,打算联合所有 JSOIer 抵御外星人的进攻。在黄金舰队就位之前,JYY 打算事先了解外星人的进攻计划。现在,携带了监听设备的特工已经秘密潜入了外星人的母舰,准备对外星人的通信实施监听。外星人的母舰可以看成是一棵 n 个节点、 n-1 条边的无向树,树上的节点用 1,2,\cdots,n1,2,...原创 2019-11-01 21:22:22 · 157 阅读 · 1 评论 -
【POJ3744】Scout YYF I(DP)(矩阵快速幂)
DescriptionYYF是一个英勇的侦查员。现在他正在执行打入到敌方内部的危险任务。在解决了一系列的险情后,YYF到达了敌方著名的"地雷路"起始点。这条路非常长,上面被精心排布了不少地雷。一开始,YYF站在1的位置。对于后面的路程,YYF有p的概率向前走一步,或者有1−p的概率向前跳两步。现在问题来了。非常喜欢坑队友的情报部得到了每个地雷的位置,但他们不准备告诉YYF,反而请你计算YYF能安...原创 2019-10-04 15:33:54 · 70 阅读 · 0 评论 -
【BZOJ4720】【UOJ262】【NOIP2016】换教室(DP)
Description对于刚上大学的牛牛来说,他面临的第一个问题是如何根据实际情况申请合适的课程。在可以选择的课程中,有 2n 节课程安排在n个时间段上。在第 i(1≤i≤n)个时间段上,两节内容相同的课程同时在不同的地点进行,其中,牛牛预先被安排在教室 ci 上课,而另一节课程在教室 di 进行。在不提交任何申请的情况下,学生们需要按时间段的顺序依次完成所有的 n 节安排好的课程。如果学生...原创 2019-10-04 15:32:43 · 97 阅读 · 0 评论 -
CF487B Strip(RMQ)(DP)
直接RMQ即可,最后套一个简单DP。RMQ求出区间的元素的最大值和最小值。后面直接一遍DP。dp[i]表示前i个数最少要分成多少份。满足条件时:dp[i]=min(dp[i],dp[ok]+1)dp[i]=min(dp[i],dp[ok]+1)dp[i]=min(dp[i],dp[ok]+1)#include<bits/stdc++.h>#define inf 21474...原创 2019-10-03 21:32:58 · 226 阅读 · 0 评论 -
【BZOJ3329】Xorequ(数位DP)
DescriptionInput第一行一个正整数,表示数据组数据 ,接下来T行每行一个正整数NOutput2*T行第2*i-1行表示第i个数据中问题一的解,第2*i行表示第i个数据中问题二的解,Sample Input11Sample Output12HINTx=1与x=2都是原方程的根,注意第一个问题的解不要mod 109+70≤N≤10^181≤T≤1000...原创 2019-09-24 13:22:36 · 260 阅读 · 0 评论 -
CF708C Centroids(树形DP)
Description题目描述我们定义一个点x是整棵树的重心(总共有n个点)当且仅当删掉点x后所有连通块的大小都不超过n/2。我们定义一次操作为删掉一条边再加上一条边,必须满足操作后整个图还是一棵树。给你一棵n个点的树,求每个点能否在一次操作后成为重心。输入第一行一个整数n;接下来n-1行每行两个整数u,v:表示第u个点与第v个点间有一条边。输出共1行n个数:第i个数表示第i个...原创 2019-10-02 10:59:15 · 183 阅读 · 0 评论 -
CF486D Valid Sets(树形DP)
Description给你一颗n个点的树,每个点有一个权值a[i],求出这颗树的所有满足权值最大点的权值-权值最小点的权值<=d 的联通子图的数目,答案对10^9+7取模Input第一行,两个整数d,n第二行,n个整数a[1]…a[n]第3~n+1行,每行两个整数x,y,表示x和y间有一条边Output一行,一个整数,表示答案对10^9+7取模后的值树形DP设dp[...原创 2019-10-02 09:02:40 · 166 阅读 · 0 评论 -
【POJ3208】Apocalypse Someday(二分,数位DP)
Description666号被认为是神秘的“野兽之数”,在所有以启示录为主题的大片中都是一个被广泛使用的数字。但是,这个数字666不能总是在脚本中使用,所以应该使用1666这样的数字。让我们把至少包含三个连续的六位数字的数字称为可怕的数字。头几个可怕的数字是666,1666,2666,3666,4666,5666…给定一个基于1的索引n,程序应该返回第n个可怕的数字。Input第一行包含...原创 2019-09-20 12:51:21 · 158 阅读 · 0 评论 -
CF464D World of Darkraft - 2(期望DP)
Roma 在游戏“World of Darkraft”(理论上应该是 World of darkcraft,MineCraft 的一个版本)找到一个新角色。 Roma\mathrm{Roma}Roma 有 k种装备,一开始每种装备各有 1个,且每种装备的初始等级均为 1。游戏中可以靠打怪来获取新装备,总共有 n 只怪兽,每打赢 1 只怪兽后,Roma\mathrm{Roma}Roma 会随机获得...原创 2019-09-14 20:54:22 · 153 阅读 · 0 评论 -
【ARC064-F】【XSY2575】Rotated Palindromes(DP)(字符串)
Description然而,由于小C沉迷于制作游戏,他完全忘记了自己作为国家集训队的一员,还有156道作业题等他完成。还有一天作业就要截止了,而他一题还没有做。于是他赶紧挑了一道看起来最简单的题:“给定一个整数N,请你求出有多少字符集为1到K之间整数的字符串,使得该字符串可以由一个长度为N的回文串循环移位后得到。所谓循环移位,就是把字符串的某个前缀(可以为空)移到字符串末尾,如"1221"循环...原创 2019-09-14 20:44:54 · 136 阅读 · 0 评论 -
【XSY2344】K-th String(DP)
DescriptionAlice有 n(n≤26) 张牌,牌上分别标有前 n 个英文小写字母。例如,如果 n=3 ,则Alice有3张牌,分别标有"a", “b”, “c” 。Alice可以通过排列这些卡牌来构造字符串 t 。考虑字符串 t 的所有子串(共 n(n+1)2 个),按照字典序从小到大排名第 k 的子串为 s 。现在,给你正整数 n,k 和字符串 s ,问有多少种可能的字符串 t 。...原创 2019-09-11 12:50:13 · 115 阅读 · 0 评论 -
【XSY2564】sequence(DP)
Description【题目描述】给定一个长度为n的由['0'..'9']组成的字符串s,v[i,j]表示由字符串s第i到第j位组成的十进制数字。将它的某一个上升序列定义为:将这个字符串切割成m段不含前导'0'的串,切点分别为k1,k2...km-1,使得v[1,k1]<v[k1+1,k2]<...<v[km-2,km-1]。请你求出该字符串s的上升序列个数,答案对 ...原创 2019-09-11 12:49:03 · 148 阅读 · 0 评论 -
【XSY2551】球(DP)(组合数学)
DescriptionSnuke喜欢五颜六色的球,他一共有 n∗k 个。有 n 种颜色,每种颜色有 k 个球。现在他将所有球以任意顺序排成一排,然后将每种颜色的最左边的球染成一种新的颜色。求重新染色后的球的颜色序列有多少种,答案对1000000007取模。Input一行两个整数 n,k 。Output一行一个整数表示方案数。Sample Inputsample input 1:2 ...原创 2019-09-10 13:44:18 · 381 阅读 · 0 评论 -
洛谷P5522 【[yLOI2019] 棠梨煎雪】(状压DP,线段树)
区间操作考虑用线段树维护。建n∗2n*2n∗2棵线段树,前nnn棵线段树维护每个串的第i位是否是0。后nnn棵线段树维护每个串的第i位是否是1。如果是问号的话,直接跳过就好(通过1和0能看出是否是问号)。然后分三种情况统计答案:1.有1也有0,不可能,ans=0ans=0ans=02.只有1或0,一种情况,ansansans不变。3.既没有0也没有1,两种情况ans∗=2ans*=2...原创 2019-09-06 12:54:53 · 169 阅读 · 0 评论