leetcode average subtree count

[LeetCode] 1032. Stream of Characters

Design an algorithm that accepts a stream of characters and checks if a suffix of these characters is a string of a given array of strings words. For ......
Characters LeetCode Stream 1032 of

LeetCode——45. 跳跃游戏 II

LeetCode链接 45. 跳跃游戏 II 给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。 每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说,如果你在 nums[i] 处,你可以跳转到任意 nums[i + j] 处: 0 <= j <= n ......
LeetCode 45 II

D. Keep the Average High

https://codeforces.com/problemset/problem/1616/D great question! 题解:首先我们令a[i]-=x,这样条件变成了区间和>=0.由裴蜀定理,n可以分解为2x+3y。 我们提出以下命题:对于a中任意子串之和>=0等价于任意长度为2或3的子串 ......
Average Keep High the

【LeetCode动态规划#02】图解不同路径I + II(首次涉及二维dp数组,)

不同路径 力扣题目链接(opens new window) 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。 问总共有多少条不同的路径? 示例 1: 输入 ......
数组 路径 LeetCode 动态 02

LeetCode28. 找出字符串中第一个匹配项的下标

题目描述: 给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始)。 如果 needle 不是 haystack 的一部分,则返回 -1 。 示例 1: 输入:haystack = "sadbutsa ......
下标 字符串 字符 LeetCode 28

leetcode-1480-easy

Running Sum of 1d Array Given an array nums. We define a running sum of an array as runningSum[i] = sum(nums[0]…nums[i]). Return the running sum of nu ......
leetcode 1480 easy

leetcode-1450-easy

Number of Students Doing Homework at Given Time Given two integer arrays startTime and endTime and given an integer queryTime. The ith student started ......
leetcode 1450 easy

leetcode-1437-easy

Check If All 1's Are at Least Length K Places Away Given an binary array nums and an integer k, return true if all 1's are at least k places away from ......
leetcode 1437 easy

leetcode-1317-easy

Find the Distance Value Between Two Arrays Given two integer arrays arr1 and arr2, and the integer d, return the distance value between the two arrays ......
leetcode 1317 easy

Leetcode(剑指offer专项训练)——DP专项(2)

三角形中最小路径之和 1.题目描述 给定一个三角形 triangle ,找出自顶向下的最小路径和。 每一步只能移动到下一行中相邻的结点上。相邻的结点 在这里指的是 下标 与 上一层结点下标 相同或者等于 上一层结点下标 + 1 的两个结点。也就是说,如果正位于当前行的下标 i ,那么下一步可以移动到 ......
专项 Leetcode offer

[ABC276G] Count Sequences 题解

考虑差分,设 $d_i=a_i-a_{i-1}$,特别的,$d_1=a_1$,那么约束就变成了 $\displaystyle\sum d_i\le m$。 对所有 $i>1$ 有 $d_i\not\equiv 0\pmod 3$。 发现 $d_1$ 非常特殊,于是可以单独考虑 $d_1\equiv ......
题解 Sequences Count 276G ABC

Leetcode Practice -- 字符串

14. 最长公共前缀 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 输入:strs = ["flower","flow","flight"] 输出:"fl" 思路解析 string longestCommonPrefix(vector<string>& s ......
字符串 字符 Leetcode Practice

Leetcode(剑指offer专项训练)——DP专项(1)

路径的数目 题目: 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。 问总共有多少条不同的路径 链接 思路: 这是一道基础的DP题目,走到位置(1,1)只 ......
专项 Leetcode offer

LeetCode45. 跳跃游戏 II

class Solution { public: //f[i]表示跳到i所需的最小步数 int jump(vector<int>& nums) { vector<int> f(10010,0x3f3f3f3f); int n=nums.size(); f[0]=0; for(int i=0;i<n; ......
LeetCode 45 II

LeetCode 55. 跳跃游戏

class Solution { public: //f[i]表示下标i是否能跳到 static const int N=3e4+10; bool canJump(vector<int>& nums) { int n=nums.size(); for(int i=0,j=0;i<n;i++)//j记 ......
LeetCode 55

【LeetCode动态规划#01】动规入门:求斐波那契数 + 爬楼梯(熟悉解题方法论)

斐波那契数 力扣题目链接(opens new window) 斐波那契数,通常用 F(n) 表示,形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是: F(0) = 0,F(1) = 1 F(n) = F(n - 1) + F(n - 2),其中 ......
方法论 楼梯 LeetCode 方法 动态

LeetCode151. 反转字符串中的单词

题目描述: 给你一个字符串 s ,请你反转字符串中 单词 的顺序。 单词 是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中的 单词 分隔开。 返回 单词 顺序颠倒且 单词 之间用单个空格连接的结果字符串。 注意:输入字符串 s中可能会存在前导空格、尾随空格或者单词间的多个空格。返回的结果 ......
字符串 单词 字符 LeetCode 151

LeetCode 169. 多数元素(/hash sort 随机化 分治 Boyer-Moore 投票算法)

原题解 ###题目 约束 ###题解 ####方法一:哈希表 class Solution { public: int majorityElement(vector<int>& nums) { unordered_map<int, int> counts; int majority = 0, cnt ......
算法 Boyer-Moore LeetCode 元素 Boyer

LeetCode剑指 Offer 05. 替换空格

题目描述: 请实现一个函数,把字符串 s 中的每个空格替换成"%20"。 示例 1: 输入:s = "We are happy."输出:"We%20are%20happy." 限制: 0 <= s 的长度 <= 10000 //使用一个新的对象,复制 str,复制的过程对其判断,是空格则替换,否则直 ......
空格 LeetCode Offer 05

代码随想录Day7-Leetcode454. 四数相加 II,383. 赎金信 ,15. 三数之和 ,18. 四数之和

### 454. 四数相加 II 这个第一时间没想出来怎么做的; 后面看了题解才发现可以两两分组;绝了 /** * @param {number[]} nums1 * @param {number[]} nums2 * @param {number[]} nums3 * @param {number ......

LeetCode541. 反转字符串 II

题目描述: 给定一个字符串 s 和一个整数 k,从字符串开头算起,每计数至 2k 个字符,就反转这 2k 字符中的前 k 个字符。 如果剩余字符少于 k 个,则将剩余字符全部反转。如果剩余字符小于 2k 但大于或等于 k 个,则反转前 k 个字符,其余字符保持原样。 示例 1: 输入:s = "ab ......
字符串 字符 LeetCode 541 II

代码随想录Day5-Leetcode242.有效的字母异位词,349. 两个数组的交集,202. 快乐数,1. 两数之和

242.有效的字母异位词 准备面试隔了三天没刷题, 结果面试里就考到哈希表了,也是蛮感叹的. 简单题, 不过api又忘的差不多了 这道可以用数组手动实现一个简易哈希表, 但(因为面试里这么干我最后写不出来了)为了适配unicode还是用map更妥当 /** * @param {string} s * ......
随想录 之和 数组 交集 Day5-Leetcode

LeetCode344. 反转字符串

题目描述: 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。 不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。 示例 1: 输入:s = ["h","e","l","l","o"]输出:["o","l","l","e ......
字符串 字符 LeetCode 344

LeetCode 31. 下一个排列

思路 因为找的是字典序升序的下一个排列,因此要尽量保证前面不动,我们从后往前考虑 从后往前找到第一个非降序的位置,然后把这个位置的数字和最小的比它大的数字交换,最后从该位置后整理为升序 这样保证了值变大,且增大的最少 从数组末尾往前找,找到 第一个 位置 j,使得 nums[j] < nums[j ......
LeetCode 31

Leetcode18. 四数之和

题目描述: 给你一个由 n 个整数组成的数组 nums ,和一个目标值 target 。请你找出并返回满足下述全部条件且不重复的四元组 [nums[a], nums[b], nums[c], nums[d]] (若两个四元组元素一一对应,则认为两个四元组重复): 0 <= a, b, c, d < ......
之和 Leetcode 18

LeetCode剑指offer

剑指 Offer 30. 包含min函数的栈 https://leetcode.cn/problems/bao-han-minhan-shu-de-zhan-lcof/description/ class MinStack { // B用来存放每次输入时小于之前最小值的元素,当需要取最小值时,直接B ......
LeetCode offer

LeetCode 746 使用最小花费爬楼梯

代码随想录_0746.使用最小花费爬楼梯 给你一个整数数组 cost ,其中 cost[i] 是从楼梯第 i 个台阶向上爬需要支付的费用。一旦你支付此费用,即可选择向上爬一个或者两个台阶。 你可以选择从下标为 0 或下标为 1 的台阶开始爬楼梯。 请你计算并返回达到楼梯顶部的最低花费。 题目跳转链接 ......
楼梯 LeetCode 746

LeetCode15. 三数之和

题目描述: 给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i != j、i != k 且 j != k ,同时还满足 nums[i] + nums[j] + nums[k] == 0 。请 你返回所有和为 0 且不重复的三元组。 注意 ......
之和 LeetCode 15

链表操作-leetcode23-删除倒数第几个节点

给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 示例 1: 示例 2: 输入:head = [1], n = 1 输出:[] 示例 3: 输入:head = [1,2], n = 1 输出:[1] 提示: 链表中结点的数目为 sz 1 <= sz <= 30 0 <= Node. ......
节点 leetcode 23

LeetCode|383. 赎金信

题目链接:383. 赎金信 给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。 如果可以,返回 true ;否则返回 false 。 magazine 中的每个字符只能在 ransomNote 中使用一次。 示例 1 ......
LeetCode 383