第十三届蓝桥杯省赛真题 Java B 组【原卷】

news2024/9/21 20:47:13

文章目录

发现宝藏

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【宝藏入口】。


第十三届蓝桥杯大赛软件赛省赛
Java B 组

【考生须知】

考试开始后, 选手首先下载题目, 并使用考场现场公布的解压密码解压试题。

考试时间为 4 小时。考试期间选手可浏览自己已经提交的答案, 被浏览的答案允许拷贝。时间截止后,将无法继续提交或浏览答案。

对同一题目, 选手可多次提交答案, 以最后一次提交的答案为准。

选手必须通过浏览器方式提交自己的答案。选手在其它位置的作答或其它方式提交的答案无效。

试题包含 “结果填空” 和 “程序设计” 两种题型。

结果填空题: 要求选手根据题目描述直接填写结果。求解方式不限。不要求源代码。把结果填空的答案直接通过网页提交即可, 不要书写多余的内容。

程序设计题: 要求选手设计的程序对于给定的输入能给出正确的输出结果。考生的程序只有能运行出正确结果才有机会得分。

注意: 在评卷时使用的输入数据与试卷中给出的示例数据可能是不同的。选手的程序必须是通用的, 不能只对试卷中给定的数据有效。

所有源码必须在同一文件中。调试通过后,拷贝提交。

注意: 不要使用 package 语句。

注意:选手代码的主类名必须为: Main, 否则会被判为无效代码。

注意: 如果程序中引用了类库, 在提交时必须将 import 语句与程序的其他部分同时提交。只允许使用 Java 自带的类库。


试题 A: 星期计算

本题总分: 5 分

【问题描述】

已知今天是星期六, 请问 2 0 22 20^{22} 2022 天的后是星期几?

注意用数字 1 到 7 表示星期一到星期日。

【答案提交】

这是一道结果填空的题, 你只需要算出结果后提交即可。本题的结果为一个整数, 在提交答案时只填写这个整数, 填写多余的内容将无法得分。


试题 B: 山

本题总分: 5 分

【问题描述】

这天小明正在学数数。

他突然发现有些正整数的形状像一座 “山”, 比如 123565321、145541, 它们左右对称 (回文) 且数位上的数字先单调不减, 后单调不增。

小明数了很久也没有数完, 他想让你告诉他在区间 [ 2022 , 2022222022 ] [2022,2022222022] [2022,2022222022] 中有多少个数的形状像一座 “山”。

【答案提交】

这是一道结果填空的题, 你只需要算出结果后提交即可。本题的结果为一个整数, 在提交答案时只填写这个整数, 填写多余的内容将无法得分。


试题 C: 字符统计

时间限制: 1.0   s 1.0 \mathrm{~s} 1.0 s 内存限制: 512.0 M B 512.0 \mathrm{MB} 512.0MB 本题总分: 10 分

【问题描述】

给定一个只包含大写字母的字符串 S S S, 请你输出其中出现次数最多的字母。如果有多个字母均出现了最多次, 按字母表顺序依次输出所有这些字母。

【输入格式】

一个只包含大写字母的字符串 S S S.

【输出格式】

若干个大写字母, 代表答案。

【样例输入】

BABBACAC

【样例输出】

A B \mathrm{AB} AB

【评测用例规模与约定】

对于 100 % 100 \% 100% 的评测用例, 1 ≤ ∣ S ∣ ≤ 1 0 6 1 \leq|S| \leq 10^{6} 1S106.


试题 D: 最少刷题数

时间限制: 1.0   s 1.0 \mathrm{~s} 1.0 s 内存限制: 512.0 M B 512.0 \mathrm{MB} 512.0MB 本题总分: 10 分

【问题描述】

小蓝老师教的编程课有 N N N 名学生, 编号依次是 1 … N 1 \ldots N 1N 。第 i i i 号学生这学期刷题的数量是 A i A_{i} Ai

对于每一名学生, 请你计算他至少还要再刷多少道题, 才能使得全班刷题比他多的学生数不超过刷题比他少的学生数。

【输入格式】

第一行包含一个正整数 N N N

第二行包含 N N N 个整数: A 1 , A 2 , A 3 , … , A N A_{1}, A_{2}, A_{3}, \ldots, A_{N} A1,A2,A3,,AN.

【输出格式】

输出 N N N 个整数, 依次表示第 1 … N 1 \ldots N 1N 号学生分别至少还要再刷多少道题。

【样例输入】

5 \begin{array}{lllll}5\end{array} 5

12 10 15 20 6 \begin{array}{lllll}12 & 10& 15& 20& 6\end{array} 121015206

【样例输出】

0 3 0 0 7 \begin{array}{lllll}0 & 3 & 0 & 0 & 7\end{array} 03007

【评测用例规模与约定】

对于 30 % 30 \% 30% 的数据, 1 ≤ N ≤ 1000 , 0 ≤ A i ≤ 1000 1 \leq N \leq 1000,0 \leq A_{i} \leq 1000 1N1000,0Ai1000.

对于 100 % 100 \% 100% 的数据, 1 ≤ N ≤ 100000 , 0 ≤ A i ≤ 100000 1 \leq N \leq 100000,0 \leq A_{i} \leq 100000 1N100000,0Ai100000.


试题 E \mathrm{E} E : 求阶乘

时间限制: 1.0   s 1.0 \mathrm{~s} 1.0 s 内存限制: 512.0 M B 512.0 \mathrm{MB} 512.0MB 本题总分: 15 分

【问题描述】

满足 N ! N ! N! 的末尾恰好有 K K K 个 0 的最小的 N N N 是多少?如果这样的 N N N 不存在输出 -1 。

【输入格式】

一个整数 K K K

【输出格式】

一个整数代表答案。

【样例输入】

2 \begin{array}{lllll}2\end{array} 2

【样例输出】

10 \begin{array}{lllll}10\end{array} 10

【评测用例规模与约定】

对于 30 % 30 \% 30% 的数据, 1 ≤ K ≤ 1 0 6 1 \leq K \leq 10^{6} 1K106.

对于 100 % 100 \% 100% 的数据, 1 ≤ K ≤ 1 0 18 1 \leq K \leq 10^{18} 1K1018.


试题 F : \mathrm{F}: F: 最大子矩阵

时间限制: 1.0   s 1.0 \mathrm{~s} 1.0 s 内存限制: 512.0 M B 512.0 \mathrm{MB} 512.0MB 本题总分: 15 分

【问题描述】

小明有一个大小为 N × M N \times M N×M 的矩阵, 可以理解为一个 N N N M M M 列的二维数组。我们定义一个矩阵 m m m 的稳定度 f ( m ) f(m) f(m) f ( m ) = max ⁡ ( m ) − min ⁡ ( m ) f(m)=\max (m)-\min (m) f(m)=max(m)min(m), 其中 max ⁡ ( m ) \max (m) max(m)表示矩阵 m m m 中的最大值, min ⁡ ( m ) \min (m) min(m) 表示矩阵 m m m 中的最小值。现在小明想要从这个矩阵中找到一个稳定度不大于 limit 的子矩阵, 同时他还希望这个子矩阵的面积越大越好 (面积可以理解为矩阵中元素个数)。

子矩阵定义如下: 从原矩阵中选择一组连续的行和一组连续的列, 这些行列交点上的元素组成的矩阵即为一个子矩阵。

【输入格式】

第一行输入两个整数 N , M N, M N,M, 表示矩阵的大小。

接下来 N N N 行, 每行输入 M M M 个整数, 表示这个矩阵。

最后一行输入一个整数 limit, 表示限制。

【输出格式】

输出一个整数, 分别表示小明选择的子矩阵的最大面积。

【样例输入】

3 4 \begin{array}{lllll} 3 &4\end{array} 34

2 0 7 9 \begin{array}{llll}2 & 0 & 7 & 9\end{array} 2079

0 6 9 7 \begin{array}{llll}0 & 6 & 9 & 7\end{array} 0697

8 4 6 4 \begin{array}{llll}8 & 4 & 6 & 4\end{array} 8464

8 \begin{array}{lllll}8\end{array} 8

【样例输出】

6 \begin{array}{lllll}6\end{array} 6

【样例说明】

满足稳定度不大于 8 的且面积最大的子矩阵总共有三个, 他们的面积都是 6 (粗体表示子矩阵元素):

2 7 0 9 \begin{array}{lllll}2& 7& 0 & 9\end{array} 2709

0 6 9 7 \begin{array}{lllll}0& 6&9 & 7\end{array} 0697

8 4 6 4 \begin{array}{lllll}8& 4& 6& 4\end{array} 8464

\begin{array}{lllll}\end{array}

2 7 0 9 \begin{array}{lllll}2& 7& 0 & 9\end{array} 2709

0 6 9 7 \begin{array}{lllll}0& 6& 9& 7\end{array} 0697

8 4 6 4 \begin{array}{lllll}8& 4& 6& 4\end{array} 8464

\begin{array}{lllll}\end{array}

2 7 0 9 \begin{array}{lllll}2& 7& 0 & 9\end{array} 2709

0 6 9 7 \begin{array}{lllll}0& 6&9 & 7\end{array} 0697

8 4 6 4 \begin{array}{lllll}8& 4& 6& 4\end{array} 8464

【评测用例规模与约定】

评测用例编号 N \mathrm{N} N M \mathrm{M} M
1,2 1 ≤ N ≤ 10 1 \leq N \leq 10 1N10 1 ≤ M ≤ 10 1 \leq M \leq 10 1M10
3,4 N = 1 N=1 N=1 M ≤ 100000 M \leq 100000 M100000
5 ∼ 12 5 \sim 12 512 1 ≤ N ≤ 10 1 \leq N \leq 10 1N10 M ≤ 10000 M \leq 10000 M10000
13 ∼ 20 13 \sim 20 1320 1 ≤ N ≤ 80 1 \leq N \leq 80 1N80 1 ≤ M ≤ 80 1 \leq M \leq 80 1M80

对于所有评测用例, 0 ≤ 0 \leq 0 矩阵元素值, limit ≤ 1 0 5 \leq 10^{5} 105


试题 G: 数组切分

时间限制: 1.0   s 1.0 \mathrm{~s} 1.0 s 内存限制: 512.0 M B 512.0 \mathrm{MB} 512.0MB 本题总分:20 分

【问题描述】

已知一个长度为 N N N 的数组: A 1 , A 2 , A 3 , … A N A_{1}, A_{2}, A_{3}, \ldots A_{N} A1,A2,A3,AN 恰好是 1 ∼ N 1 \sim N 1N 的一个排列。现在要求你将 A A A 数组切分成若干个 (最少一个, 最多 N N N 个) 连续的子数组, 并且每个子数组中包含的整数恰好可以组成一段连续的自然数。

例如对于 A = { 1 , 3 , 2 , 4 } A=\{1,3,2,4\} A={1,3,2,4}, 一共有 5 种切分方法:

{ 1 } { 3 } { 2 } 4 } : \{1\} \{3\}\{2\} 4\}: {1}{3}{2}4}: 每个单独的数显然是 (长度为 1 的) 一段连续的自然数。

{ 1 } { 3 , 2 } 4 } : { 3 , 2 } \{1\} \{3,2\} 4\}:\{3,2\} {1}{3,2}4}:{3,2} 包含 2 到 3 , 是一段连续的自然数, 另外 { 1 } \{1\} {1} { 4 } \{4\} {4} 显然也是。

{ 1 } { 3 , 2 , 4 } : { 3 , 2 , 4 } \{1\}\{3,2,4\}:\{3,2,4\} {1}{3,2,4}:{3,2,4} 包含 2 到 4 , 是一段连续的自然数, 另外 { 1 } \{1\} {1} 显然也是。

{ 1 , 3 , 2 } { 4 } : { 1 , 3 , 2 } \{1,3,2\} \{4\}:\{1,3,2\} {1,3,2}{4}:{1,3,2} 包含 1 到 3 , 是一段连续的自然数, 另外 { 4 } \{4\} {4} 显然也是。

{ 1 , 3 , 2 , 4 } \{1,3,2,4\} {1,3,2,4} : 只有一个子数组, 包含 1 到 4 , 是一段连续的自然数。

【输入格式】

第一行包含一个整数 N N N 。第二行包含 N N N 个整数, 代表 A A A 数组。

【输出格式】

输出一个整数表示答案。由于答案可能很大, 所以输出其对 1000000007 取模后的值

【样例输入】

4 \begin{array}{llll} 4\end{array} 4

1 3 2 4 \begin{array}{llll}1 & 3 & 2 & 4\end{array} 1324

【样例输出】

5 \begin{array}{llll}5\end{array} 5

【评测用例规模与约定】

对于 30 % 30 \% 30% 评测用例, 1 ≤ N ≤ 20 1 \leq N \leq 20 1N20.

对于 100 % 100 \% 100% 评测用例, 1 ≤ N ≤ 10000 1 \leq N \leq 10000 1N10000.


试题 H: 回忆迷宫

时间限制: 1.0   s 1.0 \mathrm{~s} 1.0 s 内存限制: 512.0 M B 512.0 \mathrm{MB} 512.0MB 本题总分: 20 分

【问题描述】

爱丽丝刚从一处地下迷宫中探险归来, 你能根据她对于自己行动路径的回讴, 帮她画出迷宫地图吗?

迷宫地图是基于二维网格的。爱丽丝会告诉你一系列她在迷宫中的移动步骤, 每个移动步骤可能是上下左右四个方向中的一种, 表示爱丽丝往这个方向走了一格。你需要根据这些移动步骤给出一个迷宫地图, 并满足以下条件:

1、爱丽丝能在迷宫内的某个空地开始, 顺利的走完她回忆的所有移动步骤。

2、迷宫内不存在爱丽丝没有走过的空地。

3、迷宫是封闭的,即可通过墙分隔迷宫内与迷宫外。任意方向的无穷远处视为迷宫外, 所有不与迷宫外联通的空地都视为是迷宫内。(迷宫地图为四联通, 即只有上下左右视为联通)

4、在满足前面三点的前提下, 迷宫的墙的数量要尽可能少。

【输入格式】

第一行一个正整数 N N N, 表示爱丽丝回忆的步骤数量。

接下来一行 N N N 个英文字符, 仅包含 UDLR 四种字符, 分别表示上 (Up)、下 (Down)、左 (Left)、右 (Right)。

【输出格式】

请通过字符画的形式输出迷宫地图。迷宫地图可能包含许多行, 用字符 '*’表示墙, 用“(空格)表示非墙。

你的输出需要保证以下条件:

1、至少有一行第一个字符为 ‘*’。

2、第一行至少有一个字符为 ‘*’。

3、每一行的最后一个字符为 ‘*’。

4、最后一行至少有一个字符为 ‘*’。

【样例输入】

17

UUUULLLLDDDDRRRRU

【样例输出】

在这里插入图片描述

【样例说明】

爱丽丝可以把第六行第六个字符作为起点。

在这里插入图片描述

【评测用例规模与约定】

对于所有数据, 0 < N ≤ 100 0<N \leq 100 0<N100.


试题 I: 红绿灯

时间限制: 1.0   s 1.0 \mathrm{~s} 1.0 s 内存限制: 512.0 M B 512.0 \mathrm{MB} 512.0MB 本题总分: 25 分

【问题描述】

爱丽丝要开车去上班, 上班的路上有许多红绿灯, 这让爱丽丝很难过。为了上班不迟到, 她给自己的车安装了氮气喷射装置。现在她想知道自己上班最短需要多少时间。

爱丽丝的车最高速度是 1 V \frac{1}{V} V1 米每秒, 并且经过改装后, 可以瞬间加速到小于等于最高速的任意速度, 也可以瞬间停止。

爱丽丝家离公司有 N N N 米远, 路上有 M M M 个红绿灯, 第 i 个红绿灯位于离爱丽丝家 A i A_{i} Ai 米远的位置, 绿灯持续 B i B_{i} Bi 秒, 红灯持续 C i C_{i} Ci 秒。在初始时(爱丽丝开始计时的瞬间), 所有红绿灯都恰好从红灯变为绿灯。如果爱丽丝在绿灯变红的瞬间到达红绿灯,她会停下车等红灯,因为她是遵纪守法的好市民。

氮气喷射装置可以让爱丽丝的车瞬间加速到超光速(且不受相对论效应的影响!), 达到瞬移的效果, 但是爱丽丝是遵纪守法的好市民, 在每个红绿灯前她都会停下氮气喷射, 即使是绿灯, 因为红绿灯处有斑马线, 而使用氮气喷射装置通过斑马线是违法的。此外, 氮气喷射装置不能连续启动, 需要一定时间的冷却, 表现为通过 K K K 个红绿灯后才能再次使用。(也就是说, 如果 K = 1 K=1 K=1, 就能一直使用啦!) 初始时, 氮气喷射装置处于可用状态。

【输入格式】

第一行四个正整数 N 、 M 、 K 、 V , N 、 M 、 K 、 V , NMKV 含义如题面所述。

接下来 M M M 行, 每行三个正整数 A i 、 B i 、 C i A_{i} 、 B_{i} 、 C_{i} AiBiCi, 含义如题面所述。

【输出格式】

输出一个正整数 T,表示爱丽丝到达公司最短需要多少秒。

【样例输入】

90 2 2 2 \begin{array}{llll}90& 2& 2 & 2\end{array} 90222

30 20 20 \begin{array}{llll}30& 20& 20 \end{array} 302020

60 20 20 \begin{array}{llll}60& 20& 20 \end{array} 602020

【样例输出】

80 \begin{array}{llll}80\end{array} 80

【样例说明】

爱丽丝在最开始直接使用氮气喷射装置瞬间到达第一个红绿灯, 然后绿灯通过, 以最高速行进 60 秒后到达第二个红绿灯, 此时绿灯刚好变红, 于是她等待 20 秒再次变为绿灯后通过该红绿灯, 此时氮气喷射装置冷却完毕, 爱丽丝再次使用瞬间到达公司, 总共用时 80 秒。

【评测用例规模与约定】

对于 30 % 30 \% 30% 的数据, N ≤ 100 ; M ≤ 10 ; M < K ; V = 1 N \leq 100 ; M \leq 10 ; M<K ; V=1 N100;M10;M<K;V=1

对于 60 % 60 \% 60% 的数据, N ≤ 1000 ; M ≤ 100 ; K ≤ 50 ; B i , C i ≤ 100 ; V ≤ 10 N \leq 1000 ; M \leq 100 ; K \leq 50 ; B_{i}, C_{i} \leq 100 ; V \leq 10 N1000;M100;K50;Bi,Ci100;V10.

对于 100 % 100 \% 100% 的数据, 0 < N ≤ 1 0 8 ; M ≤ 1000 ; K ≤ 1000 ; 0 < B i , C i ≤ 1 0 6 ; 0 < 0<N \leq 10^{8} ; M \leq 1000 ; K \leq 1000 ; 0<B_{i}, C_{i} \leq 10^{6} ; 0< 0<N108;M1000;K1000;0<Bi,Ci106;0< V ≤ 1 0 6 ; 0 < A i < N V \leq 10^{6} ; 0<A_{i}<N V106;0<Ai<N; 对任意 i < j i<j i<j, 有 A i < A j A_{i}<A_{j} Ai<Aj


试题 J 拉箱子

时间限制: 1.0   s 1.0 \mathrm{~s} 1.0 s 内存限制: 1.0   G B 1.0 \mathrm{~GB} 1.0 GB 本题总分: 25 分

【问题描述】

推箱子是一款经典电子游戏, 爱丽丝很喜欢玩, 但是她有点玩淢了, 现在她想设计一款拉箱子游戏。

拉箱子游戏需要玩家在一个 N × M N \times M N×M 的网格地图中, 控制小人上下左右移动,将箱子拉到终点以获得胜利。

现在爱丽丝想知道, 在给定地形 (即所有墙的位置) 的情况下, 有多少种不同的可解的初始局面。

【初始局面】的定义如下:

1、初始局面由排列成 N × M N \times M N×M 矩形网格状的各种元素组成, 每个网格中有且只有一种元素。可能的元素有: 空地、墙、小人、箱子、终点。

2、初始局面中有且只有一个小人。

3、初始局面中有且只有一个箱子。

4、初始局面中有且只有一个终点。

【可解】的定义如下:

通过有限次数的移动小人 (可以在移动的同时拉箱子), 箱子能够到达终点所在的网格。

【移动】的定义如下:

在一次移动中, 小人可以移动到相邻 (上、下、左、右四种选项) 的一个网格中, 前提是满足以下条件:

1、小人永远不能移动到 N × M N \times M N×M 的网格外部。

2、小人永远不能移动到墙上或是箱子上。

3、小人可以移动到空地或是终点上。

【拉箱子】的定义如下:

在一次合法移动的同时, 如果小人初始所在网格沿小人移动方向的反方向

上的相邻网格上恰好是箱子, 小人可以拉动箱子一起移动, 让箱子移动到小人初始所在网格。

即使满足条件,小人也可以只移动而不拉箱子。

【输入格式】

第一行两个正整数 N N N M M M, 表示网格的大小。

接下来 N N N 行, 每行 M M M 个由空格隔开的整数 0 或 1 描述给定的地形。其中 1 表示墙, 0 表示未知的元素, 未知元素可能是小人或箱子或空地或终点, 但不能是墙。

【输出格式】

输出一个正整数, 表示可解的初始局面数量。

【样例输入】

2 4 \begin{array}{llll}2 & 4\end{array} 24

0 0 0 0 \begin{array}{llll}0 & 0 & 0 & 0\end{array} 0000

1 1 1 0 \begin{array}{llll}1 & 1 & 1 & 0\end{array} 1110

【样例输出】

13 \begin{array}{llll}13\end{array} 13

【样例说明】

在这里插入图片描述在这里插入图片描述在这里插入图片描述

【评测用例规模与约定】

对于 30 % 30 \% 30% 的数据, N , M ≤ 3 N, M \leq 3 N,M3.

对于 100 % 100 \% 100% 的数据, 0 < N , M ≤ 10 0<N, M \leq 10 0<N,M10.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1536981.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

仿muduo库实现one thread one loop式并发服务器

文章目录 一、项目简介 二、项目整体认识 2、1 HTTP服务器 2、2 Reactor模型 三、预备知识 3、1 C11 中的 bind 3、2 简单的秒级定时任务实现 3、3 正则库的简单使用 3、4 通用类型any类型的实现 四、服务器功能模块划分与实现 4、1 Buffer模块 4、2 Socket模块 4、3 Channel模…

【TD3思路及代码】【自用笔记】

1 组成&#xff08;Target Network Delayed Training&#xff09; Actor网络&#xff1a;这个网络负责根据当前的状态输出动作值。在训练过程中&#xff0c;Actor网络会不断地学习和优化&#xff0c;以输出更合适的动作。Critic网络&#xff1a;TD3中有两个Critic网络&#xff…

解决:springboot项目访问hdfs文件提示guava版本不兼容

1、问题描述 版本说明&#xff1a;我用的hadoop版本&#xff1a;3.1.3 项目可以正常启动&#xff0c;但是调用访问hdfs的服务时候报错,报错消息如下&#xff1a;com.google.common.base.preconditions.checkArgument(ZL java/lang/String;Ljava/lang/Object:)V 原因分析&#x…

力扣 字符串解码

维护一个放数字的栈&#xff0c;一个放字母的栈 遇到[把数字和字母入栈&#xff0c;遇到]把当前字母循环加上数字栈头遍的字母栈头 class Solution { public:string decodeString(string s) {string ans"";stack<int>sz;stack<string>zm;里面是string …

蓝桥杯(3.22 刷真题)

P8682 [蓝桥杯 2019 省 B] 等差数列 RE是因为除以0的情况 import java.util.Arrays; import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in);int n sc.nextInt();int[] res new int[n1];for(int i1;i&l…

集合深入------理解底层。

集合的使用 前提&#xff1a;栈、堆、二叉树、hashcode、toString()、quesalus()的知识深入和底层理解。 1、什么是集合 集合就是咋们所说的容器 ​ 前面我们学习过数组 数组也是容器 ​ 容器&#xff1a;装东西的 生活中有多少的容器呀? 水杯 教室 酒瓶 水库 只要是…

【论文速读】| 视觉对抗样本:突破对齐的大语言模型

本次分享论文为&#xff1a;Visual Adversarial Examples: Jailbreak Aligned Large Language Models 基本信息 原文作者&#xff1a;Xiangyu Qi, Peter Henderson, Kaixuan Huang, Ashwinee Panda, Mengdi Wang, Prateek Mittal 作者单位&#xff1a;普林斯顿大学、斯坦福大…

算法打卡day20|二叉树篇09|Leetcode 669. 修剪二叉搜索树、108.将有序数组转换为二叉搜索树、538.把二叉搜索树转换为累加树

算法题 Leetcode 669. 修剪二叉搜索树 题目链接:669. 修剪二叉搜索树 大佬视频讲解&#xff1a;修剪二叉搜索树视频讲解 个人思路 把这道题想复杂了&#xff0c;还想着如何去重构树 解法 递归法 依旧递归三步走 1.确定递归函数的参数以及返回值 这题递归需要返回值&#…

NVMe开发——NAND Flash的基本原理

1. 存储单元 1.1. 半导体 半导体&#xff08;semiconductor&#xff09;指常温下导电性能介于导体与绝缘体之间的材料。纯净半导体一般是四价原子(如硅或锗)。 1.1.1. P型半导体 P型半导体是通过将一个纯净的半导体材料&#xff08;如硅或锗&#xff09;中掺杂少量的三价杂…

软件管理rpm与yum

源代码包下载 Compare, Download & Develop Open Source & Business Software - SourceForgehttps://sourceforge.net/ rpm包下载 Welcome to the RPM repository on fr2.rpmfind.nethttp://rpmfind.net/linux/RPM/ 软件包管理 1.rpm包管理: 1)查询: 安装…

Linux网络协议栈从应用层到内核层②

文章目录 1、bind 源码剖析2、listen 源码剖析3、accept 源码剖析4、connect 源码剖析客户端调用connect成功&#xff0c;但三次握手并未完成&#xff0c;进程是如何阻塞自己客户端在connect时&#xff0c;如何选择源端口客户发送syn封包以及重传服务端收到syn封包&#xff0c;…

python通过tcp协议发送二进制数据

写c程序时经常会有发送私有化协议的过程&#xff0c;比如头结构数据包&#xff0c;数据包往往是一个结构体&#xff0c;有时为了方便调试会用python写一些测试程序。 发送的包的结构图示例如下&#xff1a; 接收包的结构图如下&#xff1a; 当然接收的RespBody会很多&#xf…

【Flask开发实战】防火墙配置文件解析(三)之python加工处理

一、前言 上一篇文章中&#xff0c;介绍了通过shell脚本读取配置文件获取到IP地址组、服务端口组、规则清单这三个模块类别基础数据。基础数据中还需要进一步进行展开处理&#xff0c;生成三类扩展表。如IP地址组中&#xff0c;同一个地址组下存在多个IP地址&#xff0c;每组I…

sy4文件、目录操作命令-补充find

补充下find的命令实例把&#xff0c;我搜了下发现这篇文章的笔记符合课程的实例&#xff1a; 参考< How to Find a File in Linux | Find Command - GeeksforGeeks> 这里做了实验&#xff0c;给大家参考&#xff1a; Linux, renowned for its robust command-line int…

【GIT】最好用的git可视化教程网站推荐

最好用可视化学习git 网站:https://learngitbranching.js.org/?demo&localezh_CN 玩遍所有关卡&#xff0c;花半天时间便能掌握git &#x1f603; 本地仓库 基础命令介绍 git commit 提交 git branch <分支名> 创建分支 git checkout <分支名> 切换分支 git…

定制红酒:品质与口感,双重保障

在葡萄酒的世界里&#xff0c;云仓酒庄的洒派定制红酒以其卓着的品质和迷人的口感&#xff0c;成为了无数品鉴者的心头好。这款红酒&#xff0c;不仅是对品质的追求&#xff0c;更是对生活的热爱和品味的体现。 云仓酒庄深知品质是红酒的灵魂&#xff0c;因此对洒派定制红酒的品…

栈和队列的学习

存储方式分两类&#xff1a;顺序存储和链式存储 栈&#xff1a;只允许从一端进行数据插入和删除的线性表&#xff1a;先进后出 FILO 队列&#xff1a;只允许从一端进行数据插入&#xff0c;另一端进行数据删除的线性表&#xff1a;先进先出 FIFO 栈 创建空栈&#xff0c;创建…

wmv转换成mp4能无损吗?这样设置~

WMV和MP4是两种不同的视频格式&#xff0c;它们使用不同的编解码算法和容器格式。在将WMV转换为MP4时&#xff0c;通常会发生一定程度的重新编码&#xff0c;因此不能完全保证无损转换。无损转换意味着输出的MP4文件与输入的WMV文件在视听上没有任何质量损失&#xff0c;这在实…

基于springboot的反诈宣传平台

技术&#xff1a;springbootmysqlvue 一、系统背景 反欺诈平台可以对公交信息进行集中管理&#xff0c;可以真正避免传统管理的缺陷。反欺诈平台是一款运用软件开发技术设计实现的应用系统&#xff0c;在信息处理上可以达到快速的目的&#xff0c;不管是针对数据添加&#xff…

spring cloud项目微服务间互相调用使用自定义标注进行鉴权方案

来吧&#xff0c;贴代码。 一、背景 我们有一个项目使用了spring cloud&#xff0c;有的微服务需要调用别的微服务&#xff0c;但这些调用没有鉴权&#xff1b;当初项目时间非常紧&#xff0c;同时这部分微服务有的对外也没有鉴权&#xff0c;在代码中设置了无须鉴权&#xf…