题目 1 class Solution { 2 public: 3 vector<double>ans; 4 vector<double> averageOfLevels(TreeNode* root) { 5 if(!root) return ans; 6 queue<TreeNode*>q; 7 ...
分类:
其他好文 时间:
2021-01-13 10:58:14
阅读次数:
0
题目 本题目一开始想要通过二叉树遍历KMP匹配,但看来实现比较复杂 不如直接暴力匹配,本题和LeetCode100.相同的树有共通之处 1 class Solution { 2 public: 3 bool isSubtree(TreeNode* s, TreeNode* t) { 4 if(!s ...
分类:
其他好文 时间:
2021-01-12 11:17:21
阅读次数:
0
228. 汇总区间 分类: 数组 简单题,但是边界条件挺细节,特别是c++,还要额外注意int的边界,不然 nums[i] == nums[i-1] + 1会overflow class Solution { public: vector<string> summaryRanges(vector<i ...
分类:
其他好文 时间:
2021-01-12 11:07:54
阅读次数:
0
题目链接 题解 因为异或结果$\not=0$的情况过多,我们可以转为考虑结果$=0$的情况,用总数减去这些区间即可。每一个数都可以和包括自己的$n$个数组为区间,因此总数$=\frac{n(n+1)}{2}$。 至于如何求结果$=0$的方案数,可以想到前缀和,但枚举左右端点需要$O(n^2)$的时间 ...
分类:
其他好文 时间:
2021-01-12 11:03:22
阅读次数:
0
题目链接 题解 可以发现枚举两个在一组里的数会TLE,加之只有两个参数限制与数据范围,容易想到排序算法。 计算第$i$个人的分数和需要知道他在每一组里是$x$还是$y$,因此排序需要满足$a_i$前的数与$a_i$组合时为$x$更优,而$a_i$后的数与$a_i$组合时为$y$更优(反之亦可),也就 ...
分类:
其他好文 时间:
2021-01-12 11:02:49
阅读次数:
0
题目链接 题解 答案一定可以为一条链,因为对于答案树中的每个节点将其子节点从大到小排序放入链尾后依旧成立。 探讨限制条件:(1)$b$只能为$n$,因为$n$一定是它所在连通分量中的最大值。(2)设$cnt_i$表示$i$作为$a$出现的次数,则$\sum\limits_^icnt_j<i$,因为每 ...
分类:
其他好文 时间:
2021-01-12 11:02:30
阅读次数:
0
题目链接 题解 很普通的数位dp题呐,$state$表示$>0$的数位个数。 AC代码 #include<bits/stdc++.h> #define int long long using namespace std; int dp[20][5],a[20],cnt; int dfs(int po ...
分类:
其他好文 时间:
2021-01-12 11:02:11
阅读次数:
0
本题解与Luogu同步 Solution 这道题,我们可以很直接地想到:遇到遇到两个相同的就一人分一个,如果最后还剩下一个$1g$或者一个$2g$,说明不能平分,直接输出NO 很简单,可以直接用!实现。 但是!但是!但是! 我们自信满满地交上去,发现…… Wrong Anwser On Pretes ...
分类:
其他好文 时间:
2021-01-12 10:36:35
阅读次数:
0
本题解与Luogu同步 Solution 把长和宽分解,之后相乘看结果 可以定义一个函数实现分解,采用递推的形式 然后一个while循环实现 #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using ...
分类:
其他好文 时间:
2021-01-12 10:36:21
阅读次数:
0
本题解与Luogu同步 Solution 很暴力的题目。 三角形面积公式 \(S=\frac{ah}{2}\) 因为高都是$1$, 所以我们直接枚举底的长度,然后把底的长度用$vis$数组表示出现过没,最后输出 一定要记得 多组数据还原变量! code #include<cstdio> #inclu ...
分类:
其他好文 时间:
2021-01-12 10:35:12
阅读次数:
0