摘要: 瞎**搜索! 暴力枚举k,对于每个k搜一遍,如果最后一层的b%a==0则有解为b/a,否则无解(易证) 每一层的分母i需大于上一层分母(效率上考虑)和b/a,由于i之后的分母大于i,则当前dep+1到k的最大和为(k-dep)/i,式子变形后可得i的上界 然后瞎**搜 阅读全文
posted @ 2018-11-22 21:13 Mr_Handsome 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 从起点和终点分别搜,找是否存在8步内共同经过的点 这样就可以把暴力的时间复杂度开根号 阅读全文
posted @ 2018-11-22 19:19 Mr_Handsome 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 高精度加减乘除 阅读全文
posted @ 2018-11-08 10:28 Mr_Handsome 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 题目描述 给定平面上n个点,找出其中的一对点的距离,使得在这n个点的所有点对中,该距离为所有点对中最小的 输入输出格式 输入格式: 第一行:n;2≤n≤200000 接下来n行:每行两个实数:x y,表示一个点的行坐标和列坐标,中间用一个空格隔开。 输出格式: 仅一行,一个实数,表示最短距离,精确到 阅读全文
posted @ 2018-11-06 15:59 Mr_Handsome 阅读(431) 评论(0) 推荐(0) 编辑
摘要: G. Two-Paths time limit per test 3.5 seconds memory limit per test 256 megabytes input standard input output standard output G. Two-Paths time limit p 阅读全文
posted @ 2018-11-04 12:11 Mr_Handsome 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 用所有合法序列的方案数减不包含题目中要求的子序列的合法序列数 后者用AC自动机维护一下dp就好 阅读全文
posted @ 2018-11-02 19:19 Mr_Handsome 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 这道题我Wa了。。。 调不过来。。。 思路很暴力 但我就是写不出来 比较好些的方法是状态间建边最短路(bfs) 我用的是记忆化搜索,但代码能力极弱未能实现 卡在了CF34点 我太蒻了。。。 希望路过的大佬指出错误! 阅读全文
posted @ 2018-11-02 19:02 Mr_Handsome 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 最短路树 阅读全文
posted @ 2018-10-30 23:20 Mr_Handsome 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 很显然是一道博弈论! 那么就用搜索来解决。 首先会发现一个性质,即牌的顺序对答案是没有影响的!(简直废话) 所以可以计算出所有的状态数是不超10e8的 所以可以预处理出所有状态的结果再O(1)返回答案 因为两人都不傻,所以当某一状态的后继状态出现先手必败时,此状态一定先手必胜 建图跑拓扑 若某一状态 阅读全文
posted @ 2018-10-30 23:11 Mr_Handsome 阅读(276) 评论(0) 推荐(0) 编辑
摘要: 小胖守皇宫! 又双叒叕水了一篇 阅读全文
posted @ 2018-10-29 23:17 Mr_Handsome 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 贪心题 易证,在保证当前元素数量的前提下使一个大集合中的最长边最小时显然是最优情况 之后就是代码实现了 阅读全文
posted @ 2018-10-29 23:14 Mr_Handsome 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 要求每两个点间的最短路,乍一看卧槽这怎么搞! 乱搞。 注意到m<=n+20,很显然要扯到生成树上。 造一棵树,再将非树边加进来(这咋加啊) 以每条非树边的端点为起点跑最短路,统计答案时取树上和非树上的最短距离就好 阅读全文
posted @ 2018-10-29 22:48 Mr_Handsome 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 和最短路有关的dp dp[i][j]表示到i点走的路程比i点最短路多j的方案数 因为要从小往大更新,所以要用最短路对点排序 对于含0边的点要注意还要根据拓扑序更新 某0环上的点u,若dis1[u](距1最短路)+disn[u](距n最短路)<=dis1[n]+k,输出-1 阅读全文
posted @ 2018-10-18 22:48 Mr_Handsome 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 用单调队列优化的dp dp[i][j][k]表在第i段时间走到(j,k)的步数 正常转移是n^5 但可以发现一段时间走的方向一定所以可以用单调队列优化 时间复杂度n^3 代码: 阅读全文
posted @ 2018-10-18 00:05 Mr_Handsome 阅读(538) 评论(0) 推荐(0) 编辑
摘要: 拿线段树随便搞搞就好了 并非原题代码: 阅读全文
posted @ 2018-10-17 23:50 Mr_Handsome 阅读(155) 评论(0) 推荐(0) 编辑
摘要: dp[i][j][k]表枚举到第i个节点,以该结点为根的子树中建了k个伐木场,距离i最近的伐木场是j的最小距离 有一些细节。。。 代码: 阅读全文
posted @ 2018-10-04 18:54 Mr_Handsome 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 还是套路题,和bzoj1030基本一样 就是多了矩乘优化 阅读全文
posted @ 2018-09-27 23:25 Mr_Handsome 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 恢复内容开始 套路题 dp[i][j]表示文本第i个字符匹配到trie图的第j个节点且没有出现过完整单词的方案数 拿26^n-dp[n]就好 阅读全文
posted @ 2018-09-27 23:23 Mr_Handsome 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 小破树splay的终极模板(gou)题,小细节很多 而我tm把容易错的地方基本都错了一遍。。。 随便列出几个我错的细节(太多了列不完都)。。。 1.不能找前驱和后继,因为不把标记推完就贸然splay会使标记传乱! 2.Make_same的标记不能记录修改的值,因为如果把某一区间修改成0标记无法下传! 阅读全文
posted @ 2018-09-17 16:02 Mr_Handsome 阅读(362) 评论(0) 推荐(0) 编辑
摘要: Description 一年一度的假面舞会又开始了,栋栋也兴致勃勃的参加了今年的舞会。今年的面具都是主办方特别定制的。每个参加舞会的人都可以在入场时选择一 个自己喜欢的面具。每个面具都有一个编号,主办方会把此编号告诉拿该面具的人。为了使舞会更有神秘感,主办方把面具分为k (k≥3)类,并使用特殊的技 阅读全文
posted @ 2018-09-10 23:35 Mr_Handsome 阅读(215) 评论(0) 推荐(0) 编辑