随笔分类 - 牛客
摘要:G 男神zyh的青睐 这道题与普通的莫队不一样的地方是,普通的莫队是求一个区间里面的贡献,但是这道题需要求两个区间贡献之间的积。 普通的莫队是二维的,对左端点进行分块,然后再在块内对右端点进行排序,复杂度为。 但是本题的莫队是三维的,对左端点进行
阅读全文
摘要:J. Pointer Analysis 读题的时候一定要仔细啊…比赛的时候读错题,写了半天都是 wa 的 其实只要把思路理清了,实现起来就很方便了。 对于每一个大写字母,只需要保存其可指向的对象即可,因为最多只有26个,因此直接用状态压缩即可,而且对于合并操作也很方便。 // Created by
阅读全文
摘要:G. Operating on a Graph 这道题需要注意的点是,合并的时候需要用链表进行合并或者用 vector 启发式合并,这样才不至于复杂度过大,另外,去重的时候,如果用哈希 map 会导致超时,而用 map 则不会 // Created by CAD #include <bi
阅读全文
摘要:A. All with Pairs 参考:A. All with Pairs (哈希值+next) 需要用到的东西是字符串哈希和前缀数组。 首先用字符串哈希将每一个后缀都统计一下,并用不同的后缀会映射为不同的哈希值,所以这样就可以在的时间复杂度内比较出两个字符串是否一样。 还要考虑到的事
阅读全文
摘要:"小V和方程" 需要用到的知识: "小球与盒子" 冷静分析,仔细思考
阅读全文
摘要:"储物点的距离" 参考: "【每日一题】5月15日题目精讲" 该题考的算法不难,但是思维要灵活。而且要注意取模。 技巧在于,要找到一些特定的状态。
阅读全文
摘要:"Strange Towers of Hanoi" 表示 i 个圆盘借助一个圆盘,转移到另一个圆盘上需要的次数。 为最优解时,其子问题 也必为最优解。如果 不是最优解,那么存在`f'[i k] define mst(name, value) memset(name,value,sizeof(name
阅读全文
摘要:"B Bits" 这是一个很经典的汉诺塔问题,该题主要难点在于输出和递归思想。 主要的递归代码: 表示完成第 x 个圆盘的移动,是从支柱 a 借助支柱 b 的力量移向支柱 c 的 代码:
阅读全文
摘要:三点共圆 三点: `(x[2].y[2]) x[3].y[3]` 圆心则为 ,半径可以根据两点之间距离公式进行计算
阅读全文
摘要:"Jelly" 在遍历一张地图,求最短路径的时候,最简便的方法就是用 来写 代码:
阅读全文