
搜索
文章平均质量分 63
IED98
这个作者很懒,什么都没留下…
展开
-
bzoj1299: [LLH邀请赛]巧克力棒 博弈
先从n根巧克力棒中取出m(m>0)根,使得这m根巧克力棒的xor和为0(也就是把nim游戏的必败状态留给对方),同时使得剩下的n-m根巧克力棒无论怎么取,xor和都不为0。(实际上m就是巧克力棒的xor和为0的最长子序列)。这么一来,对手就面临一个必败状态的nim游戏。如果他从n-m根中取新的巧克力棒,实际上就是新建一个xor和不为0的nim游戏,这时轮到己方操作只要将这个新的nim游戏取原创 2015-01-03 23:30:14 · 600 阅读 · 0 评论 -
BZOJ 1086 SCOI2005 王室联邦 块状树
朴素的分块方式是贪心 能加就加 这种方法存在着严重的效率问题 可以被菊花卡成O(n)块因此我们可以为其它的块预留位置 如果一块大小刚好>=b 就将这坨东西分成一块首先任选一点开始深搜 维护一个栈 每个点退出递归时压栈 自下至上进行合并如果某棵子树深搜完之后栈内元素数>=b 就把当前的栈内元素合并为一个块但是这种方法存在一个问题 就是如果某棵子树深搜之后不到b 去深搜原创 2015-02-03 18:11:40 · 396 阅读 · 0 评论 -
bzoj1055: [HAOI2008]玩具取名 dp
dp[l][r][a]代表区间l到r是否能变为a然后直接记忆化搜索。#include #include #include #include #include #include using namespace std;char p[4]={'W','I','N','G'};int q[255],t[4];;char ch[205],a[4][20][2];int dp[205原创 2015-03-20 10:33:46 · 719 阅读 · 0 评论 -
bzoj1260: [CQOI2007]涂色paint dp
直接判断两端颜色是否相同,然后直接记忆化搜索就可以了。#include #include #include #include #include #include using namespace std;#define maxn 110int dp[maxn][maxn];char st[maxn];int n,siz[maxn],num[maxn];int dfs(int l原创 2015-03-20 11:33:25 · 488 阅读 · 0 评论 -
bzoj1090: [SCOI2003]字符串折叠 dp
可以先求每个区间可以折叠的长度,这个可以先hash一下然后直接记忆化搜索。#include #include #include #include #include #include using namespace std;char st[110];#define pb(a) push_back(a)int x=123;unsigned long long ha[110],p原创 2015-03-20 10:49:38 · 594 阅读 · 0 评论 -
bzoj3566: [SHOI2014]概率充电器 dp
原文改自yzf的博客首先普及一个概率公式 P(A+B)=P(A)+P(B)-P(AB)题意:一些充电元件和导线构成一棵树,充电元件是否能充电有2种情况,1、它自己有qi%的概率充电2、与它相邻的元件通过导线给它充电(导线有p%的概率导通)求最终充了电的元件的期望题解:首先可以将元件能否充电分成3种情况考虑,1、它自己给自己充好了电2、原创 2015-03-24 19:28:06 · 750 阅读 · 0 评论 -
bzoj3810: [Coci2015]Stanovi 记忆化搜索
膜拜了网上神犇的题解,得知是记忆化搜索之后感觉整个题就傻逼了。然而我作死得把大数组开在前面,然后就被卡常数了(这种卡常还真是233333)。主要思路就是一个矩形房间可以分为多个小矩形,然后递归处理。#include #include #include #include using namespace std;#define sint long long#define INF原创 2015-07-12 20:46:55 · 1301 阅读 · 0 评论 -
bzoj1415: [Noi2005]聪聪和可可 记忆化搜索
由于猫每次都走最短路,我们可以把老鼠所在每个点时猫会怎么走给处理出来。若i==j 则f[i][j]=0若p[i][j]==j||p[p[i][j]][j]==j则f[i][j]=1否则令temp=p[p[i][j]][j],则有其中degree[j]表示j的连边数量#include #include #include #include #include #in原创 2015-07-13 09:49:37 · 601 阅读 · 0 评论 -
bzoj3629: [JLOI2014]聪明的燕姿 搜索好题
题目大意:令f(x)=Σi (i|x) 给定n,求所有的x,使f(x)=n首先约数和公式令n=p1^a1*p2^a2*...*pk^ak则f(n)=(1+p1+p1^2+...+p1^a1)*(1+p2+p2^2+...+p2^a2)*...*(1+pk+pk^2+...+pk^ak)于是我们枚举质数p,采取DFS的方式求出所有值#include #include #inclu原创 2015-07-13 12:41:08 · 628 阅读 · 0 评论