分类: 未分类

544 篇文章

P2634 [国家集训队]聪聪可可
Miku 可以用树上dp解决 $dp_{i,j}$表示以i为根的子树在模三意义下到i的距离为j的点有几个 然后根据乘法原理搞一波 #include<iostream> #include<cstdio> #include<algorithm> using namespace std; int n; int x,y,…
P2051 [AHOI2009]中国象棋
Miku 用$dp_{i,j,z}$表示在第i行有j列一炮,z列二炮时的方案数 自己做的时候t飞了三个点 然后发现需要写一个更快的读入优化 #include<iostream> #include<cstdio> #include<algorithm> using namespace std; long long …
Chemical Reaction UVA – 10604
Miku 这道题样例错了!!! 正确解决方法 ⇒ 写一个搜索 ⇒ TLE ⇒进行记忆化改造 ⇒ Ac #include<iostream> #include<cstring> #include<algorithm> using namespace std; const int maxn =15; char c; …
Free Candies UVA – 10118
Miku 这个题目还是挺水得 正确解决方法 $Rightarrow$ 写一个搜索 $Rightarrow$ TLE $Rightarrow$进行记忆化改造 $Rightarrow$ Ac 记忆化搜索和dp个人感觉有个区别就是记忆化是从下往上,dp是从上往下 #include<iostream> #include<algorithm…
P2758 编辑距离
[MIku](https://www.luogu.com.cn/problem/P2758) 定义$dp{i,j}$为把$A{1-i}$变为$B_{1-j}$得最小花费 可以由$dp{i-1,j}$转移,把$A{i}$删了 $dp{i,j-1}$ 最后加个$B{j}$ $dp_{i-1,j-1}$ 把$A_i$改成$B_j$并且显然,若他们相等,就…
P2323 [HNOI2006]
Miku 一眼就看出来是个二分答案 二分最大边的权值 然后显然这种题是不需要考虑花了多少钱的,那么对于每一个mid 就先把所有范围内1级边全键了,然后再把剩下的二级边全键了,看一下能不能跑出来一个生成树 就行了 //二分解决最大的最小 #include<iostream> #include<algorithm> #inclu…
P3958 奶酪
Miku 说出来你们可能不信,这题卡了我一小时 因为没写路径压缩但是我以为我写了+写快读忘了处理负数 哭了 思路就是把所有联通的球放到一个并查集里,然后只要有上下表面的球联通了,就有了答案 #include<iostream> #include<cstdio> #include<algorithm> #inclu…
P5690 [CSP-SJX2019]日期
Miku 这只是一道小小的模拟 但是要考虑的东西也不少 思路,在改变月份时,尽量改为有31天的 #include<iostream> #include<cstdio> #include<cstring> using namespace std; char c; int a,b; int ans; int big[…
P5658 括号树(贪心)
Miku so crazy 因为把stack的类型写成bool 把自己搞自闭了 思路,显然如果一个点是(,那么不会有贡献,只要压入队列,答案继承父亲就行了 如果是),如果能匹配,就判断(的父亲是什么,如果是),那么显然把根节点到)的父亲的序列中与刚匹配的()相接的部分加上刚匹配的()也是合法的 不考虑刚匹配的()也是合法的,新括号自己也合法,不是的…
P2071 座位安排(二分图)
Miku 既然是二分图匹配的模板 为什么不和模板一样是绿的 #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace std; struct b{ int to; int ne; …