![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetCode
Darcysunm
这个作者很懒,什么都没留下…
展开
-
leetCode 391打卡记录2021.11.16
typedef pair<int, int> Point;class Solution {public: bool isRectangleCover(vector<vector<int>>& rectangles) { long area = 0; int minX = rectangles[0][0], minY = rectangles[0][1], maxX = rectangles[0][2], maxY =原创 2021-11-16 11:15:39 · 78 阅读 · 0 评论 -
leetCode 319打卡记录2021.11.13
class Solution {public: int bulbSwitch(int n) { return sqrt(n+0.5); }};原创 2021-11-15 18:24:04 · 85 阅读 · 0 评论 -
leetCode 677打卡记录2021.11.13
class MapSum {public: MapSum() { } void insert(string key, int val) { map[key] = val; } int sum(string prefix) { int count=0; for(auto & [key,val] : map){ if(key.substr(0,prefix.size()原创 2021-11-14 11:28:01 · 3674 阅读 · 0 评论 -
leetCode 520打卡记录2021.11.13
class Solution {public: bool detectCapitalUse(string word) { if(word.size()>=2 && islower(word[0]) && isupper(word[1])) return false; for(int i=2;i<word.size();i++){ if(islower(word[1]) ^ i原创 2021-11-13 16:28:04 · 3210 阅读 · 0 评论 -
leetCode 375打卡记录2021.11.12
class Solution {public: int getMoneyAmount(int n) { vector<vector<int>> dp(n+1,vector<int>(n+1)); for(int i=n-1;i>=1;i--){ for(int j=i+1;j<=n;j++){ int minCost=INT_MAX;原创 2021-11-12 14:51:47 · 63 阅读 · 0 评论 -
leetCode 629打卡记录2021.11.11
题目 给出两个整数 n 和 k,找出所有包含从 1 到 n 的数字,且恰好拥有 k 个逆序对的不同的数组的个数。 逆序对的定义如下:对于数组的第i个和第 j个元素,如果满i < j且 a[i] > a[j],则其为一个逆序对;否则不是。 由于答案可能很大,只需要返回 答案 mod 109 + 7 的值。 n 的范围是 [1, 1000] 并且 k 的范围是 [0, 1000]解题思路首先确定该题需要使用动态规划。为了方便推导公式,先举一个例子: [ 2 , .原创 2021-11-11 19:16:56 · 219 阅读 · 0 评论 -
leetCode 495打卡记录2021.11.10
1.题目描述 在《英雄联盟》的世界中,有一个叫 “提莫” 的英雄。他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态。 当提莫攻击艾希,艾希的中毒状态正好持续 duration 秒。 正式地讲,提莫在 t 发起发起攻击意味着艾希在时间区间 [t, t + duration - 1](含 t 和 t + duration - 1)处于中毒状态。如果提莫在中毒影响结束 前 再次攻击,中毒状态计时器将会 重置 ,在新的攻击之后,中毒影响将会在 duration 秒后结束。 给你一个 非递减原创 2021-11-10 20:21:24 · 75 阅读 · 0 评论 -
2021.11.9划水一天
class Solution {int ans, used;unordered_map<char, int> rem;stack<pair<char, int>> st;void dfs(int pos, string &board) { if (used >= ans) return; if (pos == board.size()) { if (st.empty()) an原创 2021-11-09 19:29:08 · 179 阅读 · 0 评论 -
2021.11.8划水一天
class Solution {public: string getHint(string secret, string guess) { int bulls = 0; vector<int> cntS(10), cntG(10); for (int i = 0; i < secret.length(); ++i) { if (secret[i] == guess[i]) {原创 2021-11-08 23:06:32 · 58 阅读 · 0 评论 -
2021.11.7划水一天
class Solution {public: int missingNumber(vector<int>& nums) { unordered_set<int> set; int n = nums.size(); for (int i = 0; i < n; i++) { set.insert(nums[i]); } int missing = -1;原创 2021-11-06 22:47:16 · 57 阅读 · 0 评论 -
leetCode 1218打卡记录2021.11.5
1.题目描述 给你一个整数数组 arr 和一个整数 difference,请你找出并返回 arr 中最长等差子序列的长度,该子序列中相邻元素之间的差等于 difference 。 子序列 是指在不改变其余元素顺序(划重点)的情况下,通过删除一些元素或不删除任何元素而从 arr 派生出来的序列。2.解题思路解题方法:动态规划 动态规划按题中的意思是,从头到尾遍历数组。依次保存以当前数字为首的,最长子序列,并且这个子序列不改变其余元素顺序(该说明对本题很重要,后面会讲),后面的数字如果在减去原创 2021-11-05 14:58:06 · 119 阅读 · 0 评论 -
leetCode 367打卡记录2021.11.4
367. 有效的完全平方数1.题目描述 给定一个 正整数 num ,编写一个函数,如果 num 是一个完全平方数,则返回 true ,否则返回 false 。 进阶:不要 使用任何内置的库函数,如 sqrt 。2.解题思路 暴力解决法:直接从1开始遍历,查找出符合条件的数,遍历完还没找到,就返回FALSE。3.代码class Solution {public: bool isPerfectSquare(int num) { long i=1,square=1;原创 2021-11-04 15:05:24 · 86 阅读 · 0 评论 -
2021.11.3划水一天
typedef pair<int,int> pii;class Solution {public: int trapRainWater(vector<vector<int>>& heightMap) { if (heightMap.size() <= 2 || heightMap[0].size() <= 2) { return 0; } int m = he原创 2021-11-03 20:23:57 · 45 阅读 · 0 评论 -
leetCode 237打卡记录2021.11.2
题目删除链表中的节点原创 2021-11-02 23:29:33 · 54 阅读 · 0 评论 -
leetCode 575打卡记录2021.11.1
575. 分糖果1.题目描述 Alice 有 n 枚糖,其中第 i 枚糖的类型为 candyType[i] 。Alice 注意到她的体重正在增长,所以前去拜访了一位医生。 医生建议 Alice 要少摄入糖分,只吃掉她所有糖的 n / 2 即可(n 是一个偶数)。Alice 非常喜欢这些糖,她想要在遵循医生建议的情况下,尽可能吃到最多不同种类的糖。 给你一个长度为 n 的整数数组 candyType ,返回: Alice 在仅吃掉 n / 2 枚糖的情况下,可以吃到糖的最多种类数。2.解题思路原创 2021-11-01 22:23:18 · 3668 阅读 · 0 评论 -
leetCode 500打卡记录2021.10.31
500 键盘行(简单题)1.题目:给你一个字符串数组 words ,只返回可以使用在 美式键盘 同一行的字母打印出来的单词。键盘如下图所示。美式键盘 中:第一行由字符 "qwertyuiop" 组成。第二行由字符 "asdfghjkl" 组成。第三行由字符 "zxcvbnm" 组成。2.解题思路将所有数字分为三组,分组标准为 该字母所在行数 ,比如说‘a’在第二行,‘z’在第三行。然后将所有字母按a-z的顺序,将他们的行数整合成一个字符串。也就是(0代表第一行,依次类推):“1221原创 2021-10-31 19:29:19 · 601 阅读 · 0 评论 -
leetCode 260打卡记录2021.10.30
LeetCode260 只出现一次的数字 III解题思路:位运算1.了解异或运算(^)、与运算(&) 异或(二进制)运算,两个数字的二进制每一位进行异或运算,不同则为1,相同则为0,比如说二进制的3是(011),二进制的4是(100). 这两个数字进行异或也就是3 ^ 4 = (011) ^ (100) = (111) =7 与运算则是两个数字的二进制每一位进行与运算,某一位都为则结果为1,即如下:3 & 4 = (011)& (100)=(000)= 03原创 2021-10-30 20:46:33 · 56 阅读 · 0 评论