12 2023 档案

摘要:二叉树的右视图 给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 示例 1: 输入: [1,2,3,null,5,null,4] 输出: [1,3,4] 示例 2: 输入: [1,null,3] 输出: [1,3] 示例 3: 输入: [ 阅读全文
posted @ 2023-12-29 17:29 lipu123
摘要:有一些球形气球贴在一堵用\(XY\)平面表示的墙面上。墙面上的气球记录在整数数组\(points\),其中\(points[i] = [x_{start}, x_{end}]\)表示水平直径在\(x_{start}\)和\(x_{end}\)之间的气球。你不知道气球的确切\(y\)坐标。 一支弓箭可 阅读全文
posted @ 2023-12-29 14:35 lipu123
摘要:给定一个长度为\(n\)的整数数组\(height\)。有\(n\)条垂线,第\(i\)条线的两个端点是\((i,0)\)和\((i,height[i])\)。 找出其中的两条线,使得它们与\(x\)轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 说明:你不能倾斜容器。 示例 1: 阅读全文
posted @ 2023-12-28 10:33 lipu123
摘要:给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。 示例 1: 输入: nums = [1,2,3,4,5,6,7], k = 3 输出: [5,6,7,1,2,3,4] 解释: 向右轮转 1 步: [7,1,2,3,4,5,6] 向右轮转 2 步: [6,7,1, 阅读全文
posted @ 2023-12-26 16:31 lipu123
摘要:https://leetcode.cn/problems/shortest-bridge/description/ 给你一个大小为\(n \times n\)的二元矩阵\(grid\),其中\(1\)表示陆地,\(0\)表示水域。 岛是由四面相连的 1 形成的一个最大组,即不会与非组内的任何其他 1 阅读全文
posted @ 2023-12-25 21:01 lipu123
摘要:链接:https://ac.nowcoder.com/acm/contest/71993/D 来源:牛客网 小红拿到了一个数组,她每次可以进行如下操作: 选择一个数,使其减去 \(x\)。 小红希望\(k\)次操作之后,该数组的最大值尽可能小。请你求出这个尽可能小的最大值。 输入描述: 第一行输入三 阅读全文
posted @ 2023-12-23 21:26 lipu123
摘要:线段树 链接 维护区间最值 struct node{ int l,r; ll ma,mi; }t[maxn]; ll a[maxn]; int n,m; void build(int p,int l,int r){ t[p].l=l; t[p].r=r; if(l==r){ t[p].ma=t[p] 阅读全文
posted @ 2023-12-22 21:51 lipu123
摘要:// 求x, y,使得ax + by = gcd(a, b) int exgcd(int a, int b, int &x, int &y) { if (!b) { x = 1; y = 0; return a; } int d = exgcd(b, a % b, y, x); y -= (a/b) 阅读全文
posted @ 2023-12-22 21:09 lipu123
摘要:RMQ(ST表查询区间最值) //以查询最大值为例 状态表示: 集合:f(i,j)表示从位置i开始长度为2^j的区间的最大值; 属性:MAX 状态转移: f(i,j)=max(f(i,j-1),f(i+(1<<(j-1)),j-1)); 含义:把区间[i,i+2^j],分成两半,[i,i+2^(j- 阅读全文
posted @ 2023-12-17 21:36 lipu123
摘要:位运算模板 求n的二进制的第k位数字: n >> k & 1 返回n的二进制最后一位1所代表的十进制数:lowbit(n) = n & -n ### 当枚举状态时假设有n个点,每个点有两种状态,那么一共就有2^n个状态,所以可以用位运算来枚举每种方案里面的状态;1~2^n-1里面的所有的数都可以作为 阅读全文
posted @ 2023-12-17 21:26 lipu123
摘要:试除法判定质数 bool is_prime(int x){ if(x<2) return false; for(int i=2;i*i<=x;i++){ if(x%i==0){ return false; } } return true; } 筛素数 朴素筛法求素数(埃式筛) int primes[ 阅读全文
posted @ 2023-12-17 20:08 lipu123
摘要:链接:https://ac.nowcoder.com/acm/contest/72041/D 来源:牛客网 小冰老是搞不清楚子串和子序列的区别,小天想要帮助小冰区分子串和子序列,小天告诉小冰,子串是连续的,子序列不一定连续,在一个字符串中,如果确定了子串的首和尾,那么子串就确定了。而子序列却不一定。 阅读全文
posted @ 2023-12-16 21:58 lipu123
摘要:\(对于方程 (x^3 - 3x - 1 = 0),我们可以通过分析来找到其一个含正根的区间。\) \(首先,观察当 (x) 很小时,(x^3) 的值比 (3x+1) 要小,而当 (x) 很大时,(x^3) 的值要大于 (3x+1)。因此,当 (x) 接近负无穷大时,(x^3 - 3x - 1) 的 阅读全文
posted @ 2023-12-14 16:22 lipu123
摘要:你这个学期必须选修 numCourses 门课程,记为 0 到 numCourses - 1 。 在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出,其中 prerequisites[i] = [ai, bi] ,表示如果要学习课程 ai 则 必须 先学习课程 b 阅读全文
posted @ 2023-12-14 11:34 lipu123
摘要:在给定的 m x n 网格 grid 中,每个单元格可以有以下三个值之一: 值 0 代表空单元格; 值 1 代表新鲜橘子; 值 2 代表腐烂的橘子。 每分钟,腐烂的橘子 周围 4 个方向上相邻 的新鲜橘子都会腐烂。 返回 直到单元格中没有新鲜橘子为止所必须经过的最小分钟数。如果不可能,返回 -1 。 阅读全文
posted @ 2023-12-14 10:50 lipu123
摘要:https://leetcode.cn/problems/count-subarrays-where-max-element-appears-at-least-k-times/description/ 给你一个整数数组 nums 和一个 正整数 k 。 请你统计有多少满足「nums 中的最大元素」至 阅读全文
posted @ 2023-12-13 17:38 lipu123
摘要:航班预订统计 https://leetcode.cn/problems/corporate-flight-bookings/ 这里有 n 个航班,它们分别从 1 到 n 进行编号。 有一份航班预订表 bookings ,表中第\(i\)条预订记录\(bookings[i] = [firsti, la 阅读全文
posted @ 2023-12-12 21:50 lipu123
摘要:假设有打乱顺序的一群人站成一个队列,数组 people 表示队列中一些人的属性(不一定按顺序)。每个 \(people[i] = [h_i, k_i]\)表示第\(i\)个人的身高为\(h_i\),前面 正好 有\(k_i\)个身高大于或等于\(h_i\)的人。 请你重新构造并返回输入数组\(peo 阅读全文
posted @ 2023-12-12 19:56 lipu123
摘要:岛屿数量(连通块) https://leetcode.cn/problems/number-of-islands/description/?envType=study-plan-v2&envId=top-100-liked 给你一个由 '1'(陆地)和 '0'(水)组成的的二维网格,请你计算网格中岛 阅读全文
posted @ 2023-12-08 21:49 lipu123
摘要:岛屿数量(连通块) https://leetcode.cn/problems/number-of-islands/description/?envType=study-plan-v2&envId=top-100-liked 给你一个由 '1'(陆地)和 '0'(水)组成的的二维网格,请你计算网格中岛 阅读全文
posted @ 2023-12-08 21:33 lipu123
摘要:二叉树的中序遍历 给定一个二叉树的根节点 root ,返回 它的 中序 遍历 。 示例 1: 输入:root = [1,null,2,3] 输出:[1,3,2] 示例 2: 输入:root = [] 输出:[] 示例 3: 输入:root = [1] 输出:[1] 提示: 树中节点数目在范围 [0, 阅读全文
posted @ 2023-12-07 21:40 lipu123
摘要:https://leetcode.cn/studyplan/sql-free-50/ 查询 查询的结构 #方式1: SELECT ...,....,... FROM ...,...,.... WHERE 多表的连接条件 AND 不包含组函数的过滤条件 GROUP BY ...,... HAVING 阅读全文
posted @ 2023-12-07 14:52 lipu123
摘要:给你一个整数数组\(nums\)和一个整数\(target\)。 请你统计并返回\(nums\)中能满足其最小元素与最大元素的 和 小于或等于\(target\)的 非空 子序列的数目。 由于答案可能很大,请将结果对\(10^9 + 7\)取余后返回。 示例 1: 输入:nums = [3,5,6, 阅读全文
posted @ 2023-12-06 20:59 lipu123
摘要:给定一个未排序的整数数组 nums ,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。 请你设计并实现时间复杂度为 O(n) 的算法解决此问题。 示例 1: 输入:nums = [100,4,200,1,3,2] 输出:4 解释:最长数字连续序列是 [1, 2, 3, 4]。它的长度为 阅读全文
posted @ 2023-12-06 16:52 lipu123
摘要:里面都是一些我不会的命令: 删除目录、文件 用rm或者rmdir 例如: 这个删除文件夹,可以用rm job.或者rmdir job. 例如删除t.txt,可以用rm t.txt -f 忽略不存在的文件,不会存在警告消息 -i 在删除前会询问用户是否操作、 -r 递归删除,常常用于目录删除 eg: 阅读全文
posted @ 2023-12-05 22:02 lipu123
摘要:找出满足差值条件的下标 II() 给你一个下标从\(0\)开始、长度为\(n\)的整数数组\(nums\),以及整数\(indexDifference\)和整数\(valueDifference\)。 你的任务是从范围\([0, n - 1]\)内找出\(2\)个满足下述所有条件的下标\(i\)和\ 阅读全文
posted @ 2023-12-01 17:55 lipu123