随笔分类 -  【★★★】

自己没想出来的题,以便知道自己有多菜。
摘要:首先隔断一条树边,不计附加边这个树肯定是断成两块了,然后就看附加边有没有连着的两个点在不同的块内。 方法1:BIT乱搞(个人思路) 假设考虑到$x$节点隔断和他父亲的边,要看$x$子树内有没有点连着附加边到子树外的。如果没有,则随便割,有1个,有唯一割法,否则没有。这个可以用dfs序处理好序列后,直 阅读全文
posted @ 2019-09-21 17:40 Ametsuji_akiya 阅读(210) 评论(0) 推荐(0)
摘要:poj我怎么一天到晚做的全是普及组CSP-J类的题目啊 发现回文中心肯定是在串内部的。而一个串两端如果不一样,肯定是要动的。也就是说$S_{i...j}$只要动一端,看剩下来部分minvalue。于是这是一个基于区间的字符串DP。 设$f_{i,j}$表示区间为回文串的最小代价,如果一个串两头不同, 阅读全文
posted @ 2019-09-20 20:52 Ametsuji_akiya 阅读(178) 评论(0) 推荐(0)
摘要:给定字符串 A,B,要求从 A 中取出互不重叠的 k 个非空子串,按照出现顺序拼起来后等于 B。求方案数。n ≤ 1000,m ≤ 200。 主要是状态的转移。先设计出$f_{i,j,k}$表长度$B_j$分了$k$段很好想,但是发现并不容易转移。 主要瓶颈在于当枚举了状态$f_{i,j,k}$ 的 阅读全文
posted @ 2019-09-20 12:11 Ametsuji_akiya 阅读(194) 评论(0) 推荐(0)
摘要:改变了我对铺砖问题的认识。首先根据之前的理解,要表示这一行当前的铺设情况,注意到由于竖着摆砖是3层的,所以要保存两行的状态,也就是对于$a[i][j]和a[i-1][j]$的铺设状态。 1.如何设计状态 无非4种情况。 $s_{i,j}=s_{i-1,j}=0$,两格都没铺。可用$0$表示 $s_{ 阅读全文
posted @ 2019-09-18 16:53 Ametsuji_akiya 阅读(200) 评论(0) 推荐(0)
摘要:附带其他做法参考:随机化(模拟退火、爬山等等等)配合搜索剪枝食用。 首先题意相当于在图上找一颗生成树并确定根,使得每个点与父亲的连边的权乘以各自深度的总和最小。即$\sum\limits_{i}depth_i\times value_{i→fa}$。 看数据范围想状压,固定好一个点为根,然后每个点选 阅读全文
posted @ 2019-09-18 08:19 Ametsuji_akiya 阅读(193) 评论(0) 推荐(0)
摘要:数 位 D P 开 long long 首先第一问是转化。 于是就可以二进制下DP了。 第二问是递推,假设最后$n-1$个01位的填法设为$f[i-1]$(方案包括0),于是有fib数列递推关系(很好推),然后矩阵快速幂即可。 一开始思路有点乱,导致边界初始化屡次出错。 WA1:见标题赤字。 WA2 阅读全文
posted @ 2019-09-17 18:00 Ametsuji_akiya 阅读(143) 评论(0) 推荐(0)
摘要:状压暴力显然可做。但是数据出的再大一点就要稳T了。理论$O(n4^m)$,只不过实际跑不满。 考虑用轮廓线DP,设$f(i,j,S)$为处理到$(i,j)$时候(这格还不确定)的轮廓线为$S$的情况(相当于把$(i,1\sim j-1)$和$(i-1,j\sim m)$的$m$个数用$S$压起来)下 阅读全文
posted @ 2019-09-17 18:00 Ametsuji_akiya 阅读(285) 评论(0) 推荐(0)
摘要:题解网上一搜一大坨的,不用复述了吧。 只是觉得网上dp方程没多大问题,但是状态的表示含义模糊。不同于正常哈密顿路径求解,状态表示应当改一下。 首先定义一次移动为从一个点经过若干个点到达另一个点,则$f[S][i]$个人认为应当表示经过若干次移动,每次移动的终点状态记为$1$,由此构成的集合$S$,也 阅读全文
posted @ 2019-09-17 18:00 Ametsuji_akiya 阅读(148) 评论(0) 推荐(0)
摘要:统计$[L,R]$内LIS长度为$k$的数的个数,$Q \le 10000,L,R < 2^{63}-1,k \le 10$。 首先肯定是数位DP。然后考虑怎么做这个dp。如果把$k$记录到状态里没有用。需要找到有效方法统一的表示前面填好的数的特点方便之后的填数。 回顾LIS过程,当前数结尾的LIS 阅读全文
posted @ 2019-09-17 18:00 Ametsuji_akiya 阅读(275) 评论(0) 推荐(0)
摘要:这道题写的时候迷迷糊糊很困。。所以我也不知道我为什么过了QWQ 一开始思路不太好,设$f[i]$表示还剩$i$个挂钩,发现边界很难处理,但是发现物品不能一样一样按顺序枚举,需要先把挂钩$> 0$价值$\ge 0$的全挂上去,然后挂钩$=0$价值$\le 0$的扔掉。 只剩下两种:价值$>0$挂钩$= 阅读全文
posted @ 2019-09-12 08:28 Ametsuji_akiya 阅读(151) 评论(0) 推荐(0)
摘要:这是noi题吗。。为什么我这种菜鸡都会做。。表示质疑。 求一个串$S$的每一个前缀$i$的不重叠的既为前缀又为后缀(下简称:border)的子串数量$num$。 模仿KMP,假设当前在求$i$的$next$数组,同时希望求出$num$,那也就是看前缀$i-1$中是border且不重叠的所有子串和第$ 阅读全文
posted @ 2019-09-11 10:35 Ametsuji_akiya 阅读(166) 评论(0) 推荐(0)
摘要:这道题以前好像模拟的时候做过,当时不会做,于是用hash水过去了。。 正解是KMP,还是用当前字符与上一次相同字符位置的距离表示数组,于是数值相等时就代表相似。第一次出现用INF代替。 然后要匹配有多少个。暴力匹配的话是:匹配到$s_i,t_{j+1}$时,若$s_i=t_{j+1}$或者是$s_i 阅读全文
posted @ 2019-09-10 16:40 Ametsuji_akiya 阅读(217) 评论(0) 推荐(0)
摘要:一个物品可以被其他物品表出,说明另外的每个物品看成矩阵的一个行向量可以表出该物品代表的行向量。 于是构造矩阵,求最多选多少个物品,就是尽可能用已有的物品去表示,相当于去消去一些没必要物品, 类似于xor的线性基,这里是实数的线性基。 通过高斯消元不断消除,看消出几行全是零的即可。也就是看这个线性空间 阅读全文
posted @ 2019-09-09 23:57 Ametsuji_akiya 阅读(143) 评论(0) 推荐(0)
摘要:其实第一反应是双向BFS或者meet in middle,$2^{14}$的搜索量,多测,应该是可以过的,但是无奈双向BFS我只写过一题,已经不会写了。 发现灯的操作情况顺序不影响结果,因为操作相当于在固定位进行xor运算,xor是可以随便交换的,所以顺序无所谓。 那么情况取决于每盏灯是否被操作过。 阅读全文
posted @ 2019-09-09 17:54 Ametsuji_akiya 阅读(183) 评论(0) 推荐(0)
摘要:注意到$L|\frac{8(10^x-1)}{9}$等价于$9L|8(10^x-1)$,这个等价转化一定要记住!(是可以证两者互为充要条件的) 于是整理后有$\frac{9L}{gcd(L,8)}|(10^x-1)$。 转化为同余方程来解决。 $10^x \equiv 1 \pmod{\frac{9 阅读全文
posted @ 2019-09-07 07:53 Ametsuji_akiya 阅读(149) 评论(0) 推荐(0)
摘要:对于质因数分解理解还不到位。 此题可知$lcm$是$x$的倍数,$x$是$lcm$的约数,只要在$lcm$的分解质因数里对每一个质因子讨论种数即可。 具体来说,对于$lcm$的一个质因子$p$,讨论$a,b,c,d(也就是lcm)$关于$p$的幂次,然后比较大小,分类讨论得出种数。 实现上来看,只要 阅读全文
posted @ 2019-09-06 10:33 Ametsuji_akiya 阅读(166) 评论(0) 推荐(0)
摘要:被zcr和yy轮流嘲讽了一番,感觉自己智商日渐下降。。。\TヘTツ 先拆mod变成整数除法,然后就是$nk- \Sigma_{i=1}^{n} i * \lfloor \frac{k}{i} \rfloor$。求后面那个。 然后发现$\lfloor \frac{k}{i} \rfloor$是连续且单 阅读全文
posted @ 2019-09-05 20:33 Ametsuji_akiya 阅读(217) 评论(0) 推荐(0)
摘要:题解已经烂大街了,lyd书上给的证明也很详细。 个人觉得lyd书上讲的引理2,3顺序应当反过来讲更符合正常思维。 讲一讲思维方式,反思一下为什么我没想到,以及是怎么才能往这方面想的。 首先数论题重要的还是要推性质。 根据定义,最先映在脑海里的应当是答案的转化,这个都可以想到。 然后是必要性推导: 反 阅读全文
posted @ 2019-09-05 17:38 Ametsuji_akiya 阅读(164) 评论(0) 推荐(0)
摘要:明显容斥。总答案减掉共线答案。共横线和共竖线简单。难点在于共斜线计数。 考虑暴力。枚举每个点对连线间整点数量,这些点可以作为共线的第三点,种数$gcd(x_1-x_2,y_1-y_2)-1$。 可以证明这是不重不漏的(枚举且仅枚举到了每个点对作为共线两端的情况)。 复杂度过高。考虑优化。 发现可以固 阅读全文
posted @ 2019-09-05 11:28 Ametsuji_akiya 阅读(125) 评论(0) 推荐(0)
摘要:题目。 首先暴力很好搞,但是优化的话就不会了。放弃QWQ。 做法1:二分答案 然后发现平均值是$ave=\frac{sum}{len}$,这种形式似乎可以二分答案?把$len$移到左边。 于是二分$ave$,去找数列有没有区间和大于等于其$len$乘以$ave$的,然后卡住了。。 有一个很巧的转化, 阅读全文
posted @ 2019-09-04 11:58 Ametsuji_akiya 阅读(734) 评论(0) 推荐(0)