240 发简信
  • 120
    1872-石子游戏Ⅷ-优化DP

    写在前面 这周周赛的最后一题,经典递推博弈论,但是没想出来,通过学习看懂了推理过程,还顺便学会了这种通过前缀的方式优化DP,收获良多。 题目 核...

  • 120
    1819-序列中不同最大公约数的数目

    写在前面 这次周赛的第四题还是比较有意思的,尤其是时间复杂度方面,给的数据范围在10^5,需要O(NlogN)的算法,就很容易将思想局限在二分、...

  • 最大公约数 - gcd

    写在前面 最大公约数的求解还是比较常用的板子之一,根据辗转相除法的思想递归操作,可以在O(logN)(其中N为较小的数)的时间完成求两个数最大公...

  • 快速幂

    写在前面 快速幂说白了就是实现一个Math.pow(),虽然Java的库中有提供计算幂的方法,但是实际使用中很可能会出现溢出的问题或者对答案取模...

  • 拓扑排序

    写在前面 拓扑排序常用于判断有向图是否有环或者获取满足一定先后顺序的图的遍历结果,其核心思路比较简单,就是DFS(深度优先遍历)或者BFS(广度...

  • 字典树

    写在前面 字典树(TireTree),典型应用是用于统计,排序和保存大量的串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优...

  • 最长上升子序列

    写在前面 对于最长上升子序列或者其变种问题,使用O(N^2)复杂度的动态规划(DP)总是比较容易想到的,而本文要提到的板子并不是普通的动态规划(...

  • 二分查找

    写在前面 二分查找算是比较常见而且简单的算法了,在很多需要时间复杂度O(NlogN)的题目中都有使用。本身二分查找并不难写,这里记录一个板子主要...

  • 120
    1697-检查边长度限制的路径是否存在-数据离线化

    写在前面 又是一道周赛第四题,这周起晚了,写了两题后边就没时间想了,这道第四题还是挺有意思的,之前也没有遇到过这种类型的离线化思想,特此记录一下...

个人介绍
大学菜鸡一枚,时不时写点学习收获