08 2018 档案
摘要:P1717 钓鱼 贪心+优先队列 先枚举最后走到哪个湖,然后用优先队列跑一遍贪心即可
阅读全文
摘要:P1066 2^k进制数 高精+组合数学 读题可得,满足条件的2^k进制数可分为2种 1.位数为2~w/k的 2.位数为w/k+1(w%k!=0)的 对于第一种,就是求2^k-1个数中不重复取 i 个的组合数,就是C(2^k-1,2)+...+C(2^k-1,w/k). 对于第二种,由于题目限制每一
阅读全文
摘要:P2327 [SCOI2005]扫雷 emmmmm.....这题真可以用状压写 因为每个数字只对3个格子有影响,相当于只有2^3=8种状态,所以可以用状压瞎搞 我们用8个数字代表二进制下的8种状态 0 000 ; 1 001 ; 2 010 ; 3 011 ; 4 100 ; 5 101 ; 6 1
阅读全文
摘要:P2154 [SDOI2009]虔诚的墓主人 组合数学+离散化+树状数组 先看题,结合样例分析,易得每个墓地的虔诚度=C(正左几棵,k)*C(正右几棵,k)*C(正上几棵,k)*C(正下几棵,k),如果任意一遍的棵树<k,则虔诚度=0。 所以我们可以预处理出C(w,k)。 再看数据范围:“对于100
阅读全文
摘要:P1850 换教室 先用Floyd把最短路处理一遍,接下来就是重头戏了 用 f [ i ][ j ][ 0/1 ] 表示在第 i 个时间段,发出了 j 次申请(注意不一定成功),并且在这个时间段是否(1/0)申请换了教室 需要知道的一点是:既然是期望,我们求的就是边权*概率(P4316 绿豆蛙的归宿
阅读全文
摘要:P4316 绿豆蛙的归宿 因为非要用bfs所以稍微麻烦一点qwq(大家用的都是dfs) 其实问题让我们求的就是经过每条边的概率*边权之和 我们可以用bfs把图遍历一遍处理概率,顺便把每条边的概率*边权存到这条边的终点上 最后把每个点的答案累加起来,答案就出来了
阅读全文
摘要:洛咕原题 题解 状压dp+矩乘 首先看到题目说M<=5,这么小的数据明显可以用状压保存相邻状态,于是可以得到一个80分的dp: 先筛出所有可用的状态,然后建立一个矩阵保存可转移的状态,再然后把每个状态都当成最初状态各跑一次dp,累计答案 然而我们发现,n太大了。又发现,其实每次转移可以直接用矩乘来搞
阅读全文
摘要:洛咕原题 正常的矩乘题。 但是,计算过程中会爆long long。 所以,我们要用快速(龟速)乘来解决。 快速乘,也就是把快速幂稍作修改。乘法被分成若干个加法,以时间为代价解决精度问题。
阅读全文
摘要:洛咕原题 dp->矩阵乘法 首先我们可以得出一个状态转移方程 f[i][j]=f[i-1][j-1]+f[i-1][j+1] 蓝后发现,我们可以把这转化为一个8*8的转移矩阵 然后跑一遍矩阵快速幂即可
阅读全文
摘要:洛咕原题 直接把乘号和快速幂重载了。注意该开long long的别忘了开 使用矩乘加速,构造初始矩阵的方法: point_here
阅读全文
摘要:P1290 欧几里德的游戏 原本不想写的,但细节有些多qwq,还是放上吧。 假设a严格大于b 当a<b*2时,只有一种方法往下走;否则就可以有多种方法,并且一定至少有一种可以使自己必胜,因为可以随意决定接下来取的顺序(可在草稿纸上推算) 然后注意细节(我交了3次才过QAQ)
阅读全文
摘要:luogu原题 最近刚学了博弈论,拿来练练手qwq 其实和数值的大小并没有关系 我们用N/P态来表示必胜/必败状态 先在草稿纸上探究硬币♦在最左侧(其实左右侧是等价的)的一条长链的N/P态,设链长为n 我们用1代替其他所有非0数 n=2: ♦1 N态 n=3: ♦11 P态 ...... 我们发现,
阅读全文