先来观察答案的几个强性质。 首先答案肯定是原串的一个$\tt{border}$,也就是失配树上的一条链。 再进一步观察:比如说答案在原串出现的位置分别为$p_1, p_2, p_3... p_k$(不妨设其严格升序),那么一定有$\max (p_i p_{i 1}) \leq length(ans) ...
分类:
其他好文 时间:
2020-02-21 22:34:04
阅读次数:
99
题目:传送门 题意: 给你 n 个不相交的圆, 问你有多少圆不被其他圆内含。 解: 我们把所有圆的左端点和右端点的 x 单独拿出来按升序排序, 然后从左往右扫。 然后遇到左边点就判断这个圆是否被内含, 不被内含就加入 ans。 具体可看代码。 #include <iostream> #include ...
分类:
其他好文 时间:
2020-02-21 14:19:14
阅读次数:
58
题意: 给出一个N个点的树,找出一个点来,以这个点为根的树时,所有点的深度之和最大 发现从根从某个位置移到它的?一个?子树得出 ans 只要 O(1) 的时间 定义 f[u] 代表以 u 为根结点的深度和 假设 v 是 u 的儿子 ,那么 f[v] 其实就是 v 的子树的深度全部 -1 ,其他节点的 ...
分类:
其他好文 时间:
2020-02-21 00:08:35
阅读次数:
70
class Solution { public: bool ans = true;; bool isBalanced(TreeNode* root) { if(!root) return true; maxDepth(root); return ans; } int maxDepth(TreeNod ...
分类:
其他好文 时间:
2020-02-21 00:02:46
阅读次数:
84
#include<cstdio> #include<iostream> using namespace std; int n,x,a,b; int main() { cin>>n>>x>>a>>b; double ans=n*(a*x*1.0/100+b*(100-x)*1.0/100); prin ...
分类:
其他好文 时间:
2020-02-19 20:59:23
阅读次数:
37
主要思路:贪心,从叶子节点开始(按深度排序即可做到),从它父亲的父亲,把距离不超过 $2$ 的节点都打上标记,$ans++$。这样一定最优,因为必须覆盖那个没被覆盖的节点。注意把根节点的父亲设为根节点,否则从根节点开始跳就RE了 ...
分类:
其他好文 时间:
2020-02-16 16:18:57
阅读次数:
71
1039 Course List for Student 依靠unordered_map<string,set<int>> ans 解决问题。 这次依靠unordered_map<int ,vector<string>> ans;如果vector改成set(自带自排序+去重)最后一个测试点会超时导致 ...
分类:
其他好文 时间:
2020-02-13 16:54:07
阅读次数:
61
题意 "英文" 做法 将$a_i 1$的限制去掉,定义$g(n,k)$ 显然有$$ans=\sum\limits_{i=0}^{k}( 1)^i \binom{k}{i}g(n,k i)$$ $g(p^e,k)=\binom{e+k 1}{k 1}$ 在$k$固定时,$g$在第一维下是积性函数 可以 ...
分类:
其他好文 时间:
2020-02-13 13:02:42
阅读次数:
65
DFS 翰翰和达达饲养了N只小猫,这天,小猫们要去爬山。 经历了千辛万苦,小猫们终于爬上了山顶,但是疲倦的它们再也不想徒步走下山了(呜咕 _ include include using namespace std; int cab[20],c[20],w,ans,n; void dfs(int no ...
分类:
其他好文 时间:
2020-02-12 10:34:35
阅读次数:
64
Address "loj3044" Solution 考虑对 $k\in [l 1,r]$ 分别求出有多少个集合 $S$ 满足 $w(S)\le k$,记作 $ans_k$。 先求出 $1$ 的初始权值 $W$。 记 $val(x)$ 表示 $x$ 的权值。枚举 $k$,现在对于每个叶子 $u$,如 ...
分类:
其他好文 时间:
2020-02-11 21:55:38
阅读次数:
119