随笔分类 - OJ - 计蒜客
摘要:链接 : "Here!" 背景 : 开始我同学是用 AC自动机 + DP 的方法来做这道题, 这道题的标签是 AC自动机, 动态规划, 矩阵 , 按道理来说 AC自动机 + DP 应该是能过的, 但是他不幸的 $T$ 了, $QAQ$, 后来 神犇Hug 给我们提供了一个思路!!! 思路 : 题目要
阅读全文
摘要:链接 : "Here!" 思路 : 如果用 $STL$ 的 $map$ 或者是使用 $unordered\underline{}map$ 的话是会 $T$ 的, 所以得手写一个 $hash表$. 其实这个题题意一开始看的话还是蛮难以理解的. 但是如果理解了题意, 这道题就非常简单了. 题目样例解析
阅读全文
摘要:链接 : "Here!" 思路 : Trie树裸题, 由开始给出的名字建一棵字典树, 然后每次查询一下抢♂劫的人名是否在字典树中, 复杂度也不清楚是多少, 反正是没给出 $M$ 的范围, 开始时用 $hash$ 做, $T$ 了, 分析一下也可以知道为什么 $T$, 因为对于不在富豪列表中的人, 还
阅读全文
摘要:链接 : "Here!" 思路 : 1. 首先这棵家族树非常非常非常有特点, 家族里的人要么没有孩子, 要么有两个孩子, 所以这棵家族树是一颗满二叉树. 2. 设定状态 $dp[i][j]$ 为 $i$ 个人组成的不超过 $j$ 层的家谱结构种数, 首先明确一点, 那些状态会为这个状态贡献值 ? 自
阅读全文
摘要:链接 : "Here!" 思路 : 1. 首先看数据范围 $1\leq n \leq 2000$, $1 \leq k \leq 100$ , 直接暴力肯定 $T$, 如果锤子是正着的就好办了, 就可用二维前缀和的技巧来进行降维了! 2. 所以直接将矩阵右旋45°, 让锤子正过来, 右旋时需要注意原
阅读全文
摘要:链接 : "Here!" 思路 : 这里采用一种非常风骚的写法, 对于求解表达式来说, 普通的做法就是用栈, 但是 还可以利用递归来解决, 其实思考一下, 递归也是调用的系统栈, 所以说本质上并没有什么区别. 首先, 设置优先级 "(", ")" 的优先级最高, 设置为100 "^" 的优先级次之,
阅读全文
摘要:链接 : "Here!" 思路 : 水题 代码 : c++ include include include include using namespace std; struct info { int ages; string id; }; int n, m; bool cmp(info a, in
阅读全文
摘要:链接 : "Here!" 思路 : 这是一道大模拟, 区分好情况就没问题了 循环构成部分 : $F , x , i , j$ 和 $E$ , 需要注意的是 $i , j$, 分析 $i, j$ 的情况 : 当 $i, j$ 全为 $n$ 的时候, 复杂度为 $O(1)$ 当 $i, j$ 为 $nu
阅读全文
摘要:链接 : "Here!" 思路 : 其实这个是一道简单的并查集问题, 判断$Jerry$是否能从下表面跑到上表面, 其实质上是判断上表面和下表面是否连通 , 因此这道问题就变成了判断连通性的问题了. 判断标准是如果$d File Name: t13.cpp Author: Mail: Created
阅读全文
摘要:链接 : "Here!" 思路 : 状压DP. 开始想直接爆搜, T掉了, 然后就采用了状压DP的方法来做. 定义$f[S]$为集合$S$的最小代价, $dis[i]$则记录第$i$个点的"深度", 所以说边$E{[i, j]}$ 的工程代价就为$dis[i] E{[i, j]}$, 因此可以得到状
阅读全文
摘要:思路: 题目要求输出在镜子里看到的二叉树 , 观察后可以发现 , 镜像的二叉树后序遍历实际上是先遍历右子树再遍历左子树再遍历根 , 所以只需要改一下后序遍历顺序即可. include include include define MAX_N 50 typedef struct Node { char
阅读全文
摘要:链接: "传送门" 思路: KMP模板题,直接生成 S 串,然后匹配一下 P 串在 S 串出现的次数,注意处理嵌套的情况即可,嵌套的情况即 S = "aaaaaa" ,P = "aa" P 串在S 串中出现了 5 次。 / File Name: jsk02e2.cpp Author: WArobot
阅读全文
浙公网安备 33010602011771号