好题精选
AlberTeslaWizard
这个作者很懒,什么都没留下…
展开
-
5219. 每个小孩最多能分到多少糖果
题目描述给你一个 下标从 0 开始 的整数数组 candies 。数组中的每个元素表示大小为 candies[i] 的一堆糖果。你可以将每堆糖果分成任意数量的 子堆 ,但 无法 再将两堆合并到一起。另给你一个整数 k 。你需要将这些糖果分配给 k 个小孩,使每个小孩分到 相同 数量的糖果。每个小孩可以拿走 至多一堆 糖果,有些糖果可能会不被分配。返回每个小孩可以拿走的 最大糖果数目 。示例 1:输入:candies = [5,8,6], k = 3输出:5解释:可以将 candies[1] 分原创 2022-04-03 15:27:17 · 193 阅读 · 0 评论 -
C - Collision 2
题目描述题目链接C++代码#include<bits/stdc++.h>using namespace std;#define fi first#define se second#define pb push_backtypedef long long LL;typedef pair<int, int> PII;unordered_map<int, vector<pair<int, char>>> point;int原创 2022-03-15 21:13:31 · 497 阅读 · 0 评论 -
两整数之和
题目描述给你两个整数 a 和 b ,不使用 运算符 + 和 - ,计算并返回两整数之和。示例 1:输入:a = 1, b = 2输出:3示例 2:输入:a = 2, b = 3输出:5提示:-1000 <= a, b <= 1000C++代码class Solution {public: int getSum(int a, int b) { if(! a) return b; int sum = (a ^ b), ca原创 2022-03-11 20:08:20 · 1267 阅读 · 1 评论 -
713. 乘积小于K的子数组
给定一个正整数数组 nums和整数 k 。请找出该数组内乘积小于 k 的连续的子数组的个数。示例 1:输入: nums = [10,5,2,6], k = 100输出: 8解释: 8个乘积小于100的子数组分别为: [10], [5], [2], [6], [10,5], [5,2], [2,6], [5,2,6]。需要注意的是 [10,5,2] 并不是乘积小于100的子数组。示例 2:输入: nums = [1,2,3], k = 0输出: 0提示:1 <= nums.leng原创 2022-03-04 20:24:39 · 218 阅读 · 0 评论 -
560. 和为 K 的子数组
题目描述给你一个整数数组 nums 和一个整数 k ,请你统计并返回该数组中和为 k 的连续子数组的个数。示例 1:输入:nums = [1,1,1], k = 2输出:2示例 2:输入:nums = [1,2,3], k = 3输出:2提示:1 <= nums.length <= 2 * 10410^4104-1000 <= nums[i] <= 1000-10710^7107 <= k <= 10710^7107C++代码class Solu原创 2022-03-04 19:28:56 · 299 阅读 · 0 评论 -
D - Sequence Query
题目描述题目链接思路Online Solution使用STL中的multisetC++代码#include<bits/stdc++.h>using namespace std;using LL = long long;multiset<LL> S;int main(){ ios::sync_with_stdio(false); cin.tie(nullptr); int tt; cin >> tt; while(tt --){ i原创 2022-02-28 13:42:54 · 199 阅读 · 0 评论 -
LeetCode 318. 最大单词长度乘积
给你一个字符串数组 words ,找出并返回 length(words[i]) * length(words[j]) 的最大值,并且这两个单词不含有公共字母。如果不存在这样的两个单词,返回 0 。示例 1:输入:words = [“abcw”,“baz”,“foo”,“bar”,“xtfn”,“abcdef”]输出:16解释:这两个单词为 “abcw”, “xtfn”。示例 2:输入:words = [“a”,“ab”,“abc”,“d”,“cd”,“bcd”,“abcd”]输出:4解释:这原创 2022-02-23 16:05:20 · 198 阅读 · 0 评论 -
AtCoder C - Jumping Takahashi
题目描述题目链接C++代码#include<bits/stdc++.h>#define pb push_back#define rep(i, a, b) for(int i = a; i < b; i ++)#define REP(i, a, b) for(int i = a; i <= b; i ++)#define fi first#define se second#define mp make_pair#define SZ(x) ((int)(x).size原创 2022-02-21 00:08:47 · 616 阅读 · 0 评论 -
802. 找到最终的安全状态
题目描述题目链接C++代码#define pb push_backclass Solution {public: vector<int> eventualSafeNodes(vector<vector<int>>& graph) { int n = graph.size(); vector<vector<int>> g(n); vector<int> d(n);/原创 2022-02-20 14:40:46 · 215 阅读 · 0 评论 -
112. 路径总和
题目描述题目链接C++代码class Solution {public: bool hasPathSum(TreeNode* root, int sum) { if(! root) return false; if(! root -> left && ! root -> right) return root -> val == sum; if(root -> left && hasPat原创 2022-02-20 10:52:33 · 333 阅读 · 0 评论 -
E - Subtree K-th Max
题目描述题目链接C++代码#include<bits/stdc++.h>#define pb push_backusing namespace std;const int N = 1e5 + 10;vector<int> e[N], ans[N]; vector<int> X(N);void dfs(int u, int fa){ vector<int> order; order.pb(X[u]); for(auto it : e[原创 2022-02-20 00:35:34 · 460 阅读 · 0 评论