![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
刷题
文章平均质量分 60
Apol1o_
这个作者很懒,什么都没留下…
展开
-
【滑动窗口】LeetCode——713.乘积小于 K 的子数组
713. 乘积小于 K 的子数组 - 力扣(LeetCode) (leetcode-cn.com)给你一个整数数组 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:原创 2022-05-06 21:00:25 · 1136 阅读 · 1 评论 -
AcWing——4310.树的DFS
4310. 树的DFS - AcWing题库给定一棵 n 个节点的树。节点的编号为 1∼n,其中 1 号节点为根节点,每个节点的编号都大于其父节点的编号。现在,你需要回答 q 个询问。每个询问给定两个整数 ui,ki。我们希望你用 DFS(深度优先搜索)算法来遍历根节点为 ui 的子树。我们规定,当遍历(或回溯)到某一节点时,下一个遍历的目标应该是它的未经遍历的子节点中编号最小的那一个子节点。例如,上图实例中:如果遍历根节点为 1 号节点的子树,则子树内各节点的遍历顺序为 [原创 2022-05-03 23:30:59 · 324 阅读 · 0 评论 -
AcWing——4309.消灭老鼠【灵活巧妙转化原问题】
4309. 消灭老鼠 - AcWing题库思路分析根据激光点的位置,就可以确定对其他有老鼠点(x, y)的激光发射(并且贯穿平面上的一整条直线)最开始的暴力解法,是想去遍历整个二维平面,计算某一个点和激光点连成的直线上所有有老鼠的点都会被消灭但是,遍历整个二维数组复杂度太高,x和y都是10410^4104级别的,遍历就是10810^8108 次此外,某一条直线会出现经过的点不是整数点,那么该如何处理又是一个棘手的问题原问题的巧妙转化:根据题意,其实可以发现一个性质(激光发射一次就是一原创 2022-05-03 23:20:39 · 187 阅读 · 0 评论 -
【前缀和+二分、滑动窗口】LeetCode——2024.考试的最大困扰度
2024. 考试的最大困扰度 - 力扣(LeetCode) (leetcode-cn.com)【考察点】前缀和+二分、滑动窗口方法1:前缀和+二分为什么会想到用二分做?从题目的表述来看,在添加k次操作后,最长连续字符的结果一定位于区间[m,n][m, n][m,n](其中,mmm表示原先字符串中连续字符的最大长度,nnn表示字符串长度)从结果的单调性质不难想到:针对具有单调性的区间,利用二分求出结果通常一道题,都会正着做,通过一系列步骤求解出最终结果;同时,也可以反着来,利用二分枚举每一个可原创 2022-05-03 23:16:28 · 455 阅读 · 0 评论 -
【笔记】for循环语句的执行顺序
引言今天在做如下题目的时候遇到了问题:我当时的代码如下:#include<stdio.h>int main() { int n, k; double s = 0; scanf("%d", &k); for(n=1; s<=k; n++){ s += 1.0/n; } printf("%d", n); return 0;}问题...原创 2020-03-01 08:15:37 · 469 阅读 · 0 评论 -
【OJ】LeetCode——3. 无重复字符的最长子串
题目描述给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: "pwwkew"输出: 3解释: 因为无重复字符的最长子串是...原创 2020-03-01 15:05:00 · 205 阅读 · 0 评论 -
【OJ】LeetCode——1302. 层数最深叶子节点的和
题目描述给你一棵二叉树,请你返回层数最深的叶子节点的和。示例:输入:root = [1,2,3,4,5,null,6,7,null,null,null,null,8]输出:15思路1.BFS一直层序遍历到最深层,然后计算所有叶子节点的值代码/** * Definition for a binary tree node. * public class TreeNode {...原创 2020-03-01 15:44:11 · 288 阅读 · 0 评论 -
【OJ】LeetCode——994. 腐烂的橘子
题目描述思路由题目可以看出,每次从一个已经腐烂的橘子向外层蔓延,不难看出这是在模拟广度优先搜索BFS的例程因此我们所用到的就是BFS算法大致过程如下:首先遍历整个网格,找到已经腐烂的橘子,加入队列;从已经腐烂的橘子去更新相邻的橘子,直到队列为空;若队列为空,网格上还有新鲜橘子,返回-1,否则返回总时间问题但在实际编程中,却遇到了两个问题1.入队数据入队的数据应该是此时橘...原创 2020-03-04 12:56:10 · 324 阅读 · 0 评论 -
【OJ】洛谷——P1028 数的计算
题目描述我们要求找出具有下列性质数的个数(包含输入的自然数nnn):先输入一个自然数nnn(n≤1000n\leq1000n≤1000),然后对此自然数按照如下方法进行处理:不作任何处理;在它的左边加上一个自然数,但该自然数不能超过原数的一半;加上数后,继续按此规则进行处理,直到不能再加自然数为止.输入格式自然数nnn,且n≤1000n\leq1000n≤1000输...原创 2020-03-15 15:29:04 · 1429 阅读 · 1 评论 -
【OJ】LeetCode——101.对称二叉树
题目描述给定一个二叉树,检查它是否是镜像对称的。例如,二叉树 [1,2,2,3,4,4,3] 是对称的。但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的。思路首先思考,如何判定一棵树是否对称?先从简单的情况开始考虑上面这颗树的左、右子节点相等,明显是一颗对称树随着树结构的复杂,我们应如何去辨别一棵树是否对称呢观察上面这颗树,我们从根节点出发,如果...原创 2020-04-18 00:11:17 · 238 阅读 · 0 评论