写代码一定要注意!!!!!! 我因为i+1写成了1+1改了一晚上!!!!!!(菜都写脸上了) 题目: Double Patience是一种单人游戏,使用标准的36张牌组。这些牌在洗牌后放在一张桌子上,叠成9叠,每叠4张,面朝上。 牌放下后,玩家转身。每一次,他可以从任意两个牌堆中取出同一等级的顶级牌 ...
分类:
其他好文 时间:
2020-03-06 13:28:24
阅读次数:
54
DP 首先先回忆一下dp,dp叫做记忆化搜索,是一种可以把暴力搜索中重复的部分重复利用,从而到达减小复杂度的目的。比如最应该熟悉的背包模型,如果你把选择的过程看成一步一步的,那么在这么多的搜索路径中一定有着很多很多的重复部分,dp就是一种把重复的部分加以利用的方法。相信大家都已经在以前的练习中已经明 ...
分类:
其他好文 时间:
2020-02-29 14:56:16
阅读次数:
88
一般解决方法 根->儿子,再由儿子->根,推出根的值 基本模型: 没有上司的舞会 任意两个一起跳舞的职员层次至少相差2(关系可以看成一棵树,相邻之间不能选择即该节点的父亲和儿子,根节点没有父亲) 一般解法:用f(x)表示x子树进行了决策之后x被选择,能获得的最大权值和,g(x)表示x子树进行了决策之 ...
分类:
其他好文 时间:
2020-02-26 14:13:48
阅读次数:
66
AC自动机+dp(记忆化搜素) https://vjudge.net/problem/UVA-11468 思路:构造出AC自动机后,把所有单词节点标记为禁止,就转化为从0节点走L步不进入任何禁止节点的概率。令dp[i][j]等于在i节点还要走j步不碰到禁忌节点的概率。 #include<iostre ...
分类:
其他好文 时间:
2020-02-14 00:40:05
阅读次数:
97
https://ac.nowcoder.com/acm/contest/3004/I 题意:输出汉诺塔移动过程中每一种移动的次数和移动总数。 如下A->B:XXA->C:XXB->A:XXB->C:XXC->A:XXC->B:XXSUM:XX 解法:记忆化搜索,当前状态的可以由上一状态得到。 #in ...
分类:
其他好文 时间:
2020-02-11 09:34:23
阅读次数:
82
1、 //秉持着必然进入一个环的思想 #include<bits/stdc++.h> using namespace std; const int N=100009; int color[N];//记录此节点的颜色(也就是是哪个节点发出的路径经过了这个节点) int circle[N];//记录环大 ...
分类:
其他好文 时间:
2020-02-09 22:01:50
阅读次数:
71
题面:https://vjudge.net/problem/UVA-437 思路: 一道典型的DAG上进行记忆化搜索的题。 本题的数据范围非常小,可以把每个立方体当作三个高不同的立方体。假若第i个立方体能放在第j个立方体上,就在i-j之间连上一条边。最后枚举起点进行记忆化搜索即可。 代码: #inc ...
分类:
其他好文 时间:
2020-02-09 18:54:26
阅读次数:
81
题面大意:有2*N的格子,每个格子可以涂成白色或者黑色,问有k个连通块的涂色方案数 N<=103,k<=2*103 我的错误思路:我没看懂题目对不起呜呜呜... 正解思路: 首先看到N<=103,反正凭我的感觉,一般来说103或者104这样的,很可能是DP或者记忆化,也就是N2的复杂度,100的话可 ...
分类:
其他好文 时间:
2020-02-08 23:11:51
阅读次数:
88
题目大意: 背景为弹钢琴,需要弹的钢琴琴键顺序为序列a(数字序列),弹钢琴只用一只手,五根手指从左到右标号1-5。设序列b为按键顺序,bi代表第i个键使用标号为bi的手指。aibi一一对应,当且仅当以下三种情况时,我们称b序列是合适的: 对于任意1<=i<=n-1: ai<ai+1时,bi<bi+1 ...
分类:
其他好文 时间:
2020-02-06 12:45:09
阅读次数:
55
/** 给定一棵树,要求给树边赋值[0,n-2],每个值只能使用一次 S = mex(u,v), mex(u,v)是u-v路径上没有出现过的编号最小的值 问使得S最大的赋值方式 由于很难直接统计答案,所以考虑统计每条边的贡献 包含(0)路径的贡献tot1是其左右子树size的乘积 包含(0,1)的路 ...
分类:
其他好文 时间:
2020-02-05 16:18:01
阅读次数:
61