自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Solkatt's Blog

不定义过去,只定义现在和未来

  • 博客(134)
  • 资源 (1)
  • 收藏
  • 关注

转载 Mac 删除启动台中无法正常移除的图标

经常会不通过appstore下载软件,也就是从网页中下载dmg,自己安装,但是当我不再想要这个软件,然后把它卸载掉之后就会发现,launchpad里还是遗留了这个软件的图标,而且删不掉。这个时候,就可以下面的办法就管用啦! 思路:找到存放launchpad中图标的数据库,对数据库进行操作直接删除对于的图标。 第一步找到comappledocklaunchpad文件夹第二步找到数据库获取其路径第三步开始对数据库进行操作 第一步:找到com.apple.

2022-04-24 14:47:24 4008 1

原创 PySide2的坑

在windows下使用运行程序时遇到如下报错:qt.qpa.plugin: Could not load the Qt platform plugin "windows" in "" even though it was found.This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

2022-04-10 16:00:52 382

原创 谷歌浏览器怎么把阅读清单按钮放到书签栏?

步骤一:在网址栏输入chrome://flags ,搜索Reading list;步骤二:把Reading list选项改为Enable,同时把Side panel改为Disable。

2022-04-05 19:18:23 1434 1

原创 C++算法题 # 56 01背包问题

题目描述有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。第 i 件物品的体积是 viv_ivi​,价值是 wiw_iwi​。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。输入格式第一行两个整数,N,V,用空格隔开,分别表示物品数量和背包容积。接下来有 N 行,每行两个整数 vi,wiv_i,w_ivi​,wi​,用空格隔开,分别表示第 i 件物品的体积和价值。输出格式输出一个整数,表示最大价值。数据范围0<N,V≤1000,

2022-03-22 12:02:36 667

原创 C++算法题 # 55 最大公约数(欧几里得算法)

题目描述给定 n 对正整数 aia_iai​,bib_ibi​,请你求出每对数的最大公约数。输入格式第一行包含整数 n。接下来 n 行,每行包含一个整数对 aia_iai​,bib_ibi​。输出格式输出共 n 行,每行输出一个整数对的最大公约数。数据范围1≤n≤105,1≤ai,bi≤2×1091≤n≤10^5,1≤a_i,b_i≤2×10^91≤n≤105,1≤ai​,bi​≤2×109输入样例:23 64 6输出样例:32思路辗转相除法,又名欧几里德算法(E

2022-03-21 16:45:00 3129

原创 C++算法题 # 54 约数之和

题目描述给定 n 个正整数 aia_iai​,请你输出这些数的乘积的约数之和,答案对 109+710^9+7109+7 取模。输入格式第一行包含整数 n。接下来 n 行,每行包含一个整数 aia_iai​。输出格式输出一个整数,表示所给正整数的乘积的约数之和,答案需对 109+710^9+7109+7 取模。数据范围1≤n≤100,1≤ai≤2×1091≤n≤100,1≤a_i≤2×10^91≤n≤100,1≤ai​≤2×109输入样例:3268输出样例:252思路

2022-03-21 14:15:35 861

原创 C++算法题 # 53 约数的个数

题目描述给定 n 个正整数 aia_iai​,请你输出这些数的乘积的约数个数,答案对 109+710^9+7109+7 取模。输入格式第一行包含整数 n。接下来 n 行,每行包含一个整数 aia_iai​。输出格式输出一个整数,表示所给正整数的乘积的约数个数,答案需对 109+710^9+7109+7取模。数据范围1≤n≤100,1≤ai≤2×1091≤n≤100,1≤a_i≤2×10^91≤n≤100,1≤ai​≤2×109输入样例:3268输出样例:12思路本题的

2022-03-21 13:38:17 1193

原创 C++算法题 # 52 试除法求约数

题目描述给定 n 个正整数 ai,对于每个整数 ai,请你按照从小到大的顺序输出它的所有约数。输入格式第一行包含整数 n。接下来 n 行,每行包含一个整数 ai。输出格式输出共 n 行,其中第 i 行输出第 i 个整数 ai 的所有约数。数据范围1≤n≤100,2≤ai≤2×1091≤n≤100,2≤a_i≤2×10^91≤n≤100,2≤ai​≤2×109输入样例:268输出样例:1 2 3 6 1 2 4 8 思路和上题求因子的类似,从1开始遍历,遍历到sqrt(

2022-03-20 19:51:41 419

原创 C++算法题 # 51 筛质数(三种方法)

题目描述给定一个正整数 n,请你求出 1∼n 中质数的个数。输入格式共一行,包含整数 n。输出格式共一行,包含一个整数,表示 1∼n 中质数的个数。数据范围1≤n≤1061≤n≤10^61≤n≤106输入样例:8输出样例:4思路本题如果使用前面的判断每一位数字是否是质数,然后统计总共的计数,我们会发现这样会超时,因为这里包含着大量重复的遍历,这样的时间复杂度为 O(n3/2)O(n^{3/2})O(n3/2)。因此我们需要找到一些性质来优化这个算法:代码示例#includ

2022-03-20 18:38:55 815

原创 C++算法题 # 50 分解质因数

题目描述给定 n 个正整数 aia_iai​,将每个数分解质因数,并按照质因数从小到大的顺序输出每个质因数的底数和指数。输入格式第一行包含整数 n。接下来 n 行,每行包含一个正整数 aia_iai​。输出格式对于每个正整数 ai,按照从小到大的顺序输出其分解质因数后,每个质因数的底数和指数,每个底数和指数占一行。每个正整数的质因数全部输出完毕后,输出一个空行。数据范围1≤n≤100,2≤ai≤2×1091≤n≤100,2≤a_i≤2×10^91≤n≤100,2≤ai​≤2×109输入

2022-03-20 15:45:44 744

原创 C++算法题 # 49 试除法判定质数

题目描述给定 n 个正整数 ai,判定每个数是否是质数。输入格式第一行包含整数 n。接下来 n 行,每行包含一个正整数 ai。输出格式共 n 行,其中第 i 行输出第 i 个正整数 ai 是否为质数,是则输出 Yes,否则输出 No。数据范围1≤n≤100,1≤ai≤231−11≤n≤100,1≤a_i≤2^{31}−11≤n≤100,1≤ai​≤231−1输入样例:226输出样例:YesNo思路代码示例#include <iostream>usi

2022-03-20 11:26:00 437

原创 C++算法题 # 48 Kruskal算法求最小生成树

题目描述给定一个 n 个点 m 条边的无向图,图中可能存在重边和自环,边权可能为负数。求最小生成树的树边权重之和,如果最小生成树不存在则输出 impossible。给定一张边带权的无向图 G=(V,E),其中 V 表示图中点的集合,E 表示图中边的集合,n=|V|,m=|E|。由 V 中的全部 n 个顶点和 E 中 n−1 条边构成的无向连通子图被称为 G 的一棵生成树,其中边的权值之和最小的生成树被称为无向图 G 的最小生成树。输入格式第一行包含两个整数 n 和 m。接下来 m 行,每行包含

2022-03-20 10:44:19 141

原创 C++算法题 # 47 Prim算法求最小生成树

题目描述给定一个 n 个点 m 条边的无向图,图中可能存在重边和自环,边权可能为负数。求最小生成树的树边权重之和,如果最小生成树不存在则输出 impossible。给定一张边带权的无向图 G=(V,E),其中 V 表示图中点的集合,E 表示图中边的集合,n=|V|,m=|E|。由 V 中的全部 n 个顶点和 E 中 n−1 条边构成的无向连通子图被称为 G 的一棵生成树,其中边的权值之和最小的生成树被称为无向图 G 的最小生成树。输入格式第一行包含两个整数 n 和 m。接下来 m 行,每行包含

2022-03-19 20:07:59 225

原创 C++算法题 # 46 Floyd求最短路径

题目描述给定一个 n 个点 m 条边的有向图,图中可能存在重边和自环,边权可能为负数。再给定 k 个询问,每个询问包含两个整数 x 和 y,表示查询从点 x 到点 y 的最短距离,如果路径不存在,则输出 impossible。数据保证图中不存在负权回路。输入格式第一行包含三个整数 n,m,k。接下来 m 行,每行包含三个整数 x,y,z,表示存在一条从点 x 到点 y 的有向边,边长为 z。接下来 k 行,每行包含两个整数 x,y,表示询问点 x 到点 y 的最短距离。输出格式共 k 行,

2022-03-19 18:01:35 827

原创 C++算法题 # 45 spfa判断负环

题目描述给定一个 n 个点 m 条边的有向图,图中可能存在重边和自环, 边权可能为负数。请你判断图中是否存在负权回路。输入格式第一行包含整数 n 和 m。接下来 m 行每行包含三个整数 x,y,z,表示存在一条从点 x 到点 y 的有向边,边长为 z。输出格式如果图中存在负权回路,则输出 Yes,否则输出 No。数据范围1≤n≤2000,1≤m≤10000,图中涉及边长绝对值均不超过 10000。输入样例:3 31 2 -12 3 43 1 -4输出样例:Yes思路

2022-03-19 17:30:35 555

原创 C++算法题 # 44 spfa求最短路径

题目描述给定一个 n 个点 m 条边的有向图,图中可能存在重边和自环, 边权可能为负数。请你求出 1 号点到 n 号点的最短距离,如果无法从 1 号点走到 n 号点,则输出 impossible。数据保证不存在负权回路。输入格式第一行包含整数 n 和 m。接下来 m 行每行包含三个整数 x,y,z,表示存在一条从点 x 到点 y 的有向边,边长为 z。输出格式输出一个整数,表示 1 号点到 n 号点的最短距离。如果路径不存在,则输出 impossible。数据范围1≤n,m≤105,1

2022-03-19 16:23:04 112

原创 C++算法题 # 43 有边数限制的最短路(Bellman-Ford 算法)

题目描述给定一个 n 个点 m 条边的有向图,图中可能存在重边和自环, 边权可能为负数。请你求出从 1 号点到 n 号点的最多经过 k 条边的最短距离,如果无法从 1 号点走到 n 号点,输出 impossible。注意:图中可能 存在负权回路 。输入格式第一行包含三个整数 n,m,k。接下来 m 行,每行包含三个整数 x,y,z,表示存在一条从点 x 到点 y 的有向边,边长为 z。输出格式输出一个整数,表示从 1 号点到 n 号点的最多经过 k 条边的最短距离。如果不存在满足条件的路径

2022-03-18 15:21:39 2317

原创 C++算法题 # 42 Dijkstra求最短路 II(堆优化的Dijkstra算法)

题目描述给定一个 n 个点 m 条边的有向图,图中可能存在重边和自环,所有边权均为非负值。请你求出 1 号点到 n 号点的最短距离,如果无法从 1 号点走到 n 号点,则输出 −1。输入格式第一行包含整数 n 和 m。接下来 m 行每行包含三个整数 x,y,z,表示存在一条从点 x 到点 y 的有向边,边长为 z。输出格式输出一个整数,表示 1 号点到 n 号点的最短距离。如果路径不存在,则输出 −1。数据范围1≤n,m≤1.5×1051≤n,m≤1.5×10^51≤n,m≤1.5×10

2022-03-18 09:57:35 628

转载 离散型特征编码方式:one-hot与哑变量

离散型特征编码方式:one-hot与哑变量  在机器学习问题中,我们通过训练数据集学习得到的其实就是一组模型的参数,然后通过学习得到的参数确定模型的表示,最后用这个模型再去进行我们后续的预测分类等工作。在模型训练过程中,我们会对训练数据集进行抽象、抽取大量特征,这些特征中有离散型特征也有连续型特征。若此时你使用的模型是简单模型(如LR),那么通常我们会对连续型特征进行离散化操作,然后再对离散的特征,进行one-hot编码或哑变量编码。这样的操作通常会使得我们模型具有较强的非线性能力。那么这两种编码方式是

2022-03-17 12:09:38 454

原创 C++算法题 # 41 Dijkstra求最短路I

题目描述给定一个 n 个点 m 条边的有向图,图中可能存在重边和自环,所有边权均为正值。请你求出 1 号点到 n 号点的最短距离,如果无法从 1 号点走到 n 号点,则输出 −1。输入格式第一行包含整数 n 和 m。接下来 m 行每行包含三个整数 x,y,z,表示存在一条从点 x 到点 y 的有向边,边长为 z。输出格式输出一个整数,表示 1 号点到 n 号点的最短距离。如果路径不存在,则输出 −1。数据范围1≤n≤500,1≤m≤105,1≤n≤500,1≤m≤10^5,1≤n≤50

2022-03-17 00:07:26 684

原创 C++算法题 # 40 有向图的拓扑排序

题目描述给定一个 n 个点 m 条边的有向图,点的编号是 1 到 n,图中可能存在重边和自环。请输出任意一个该有向图的拓扑序列,如果拓扑序列不存在,则输出 −1。若一个由图中所有点构成的序列 A 满足:对于图中的每条边 (x,y),x 在 A 中都出现在 y 之前,则称 A 是该图的一个拓扑序列。输入格式第一行包含两个整数 n 和 m。接下来 m 行,每行包含两个整数 x 和 y,表示存在一条从点 x 到点 y 的有向边 (x,y)。输出格式共一行,如果存在拓扑序列,则输出任意一个合法的拓扑

2022-03-16 17:59:32 479

原创 C++算法题 # 39 图中点的层次

题目描述给定一个 n 个点 m 条边的有向图,图中可能存在重边和自环。所有边的长度都是 1,点的编号为 1∼n。请你求出 1 号点到 n 号点的最短距离,如果从 1 号点无法走到 n 号点,输出 −1。输入格式第一行包含两个整数 n 和 m。接下来 m 行,每行包含两个整数 a 和 b,表示存在一条从 a 走到 b 的长度为 1 的边。输出格式输出一个整数,表示 1 号点到 n 号点的最短距离。数据范围1≤n,m≤1051≤n,m≤10^51≤n,m≤105输入样例:4 51 2

2022-03-16 15:32:10 1268

原创 C++算法题 # 38 树的重心(树的深度优先遍历)

题目描述给定一颗树,树中包含 n 个结点(编号 1∼n)和 n−1 条无向边。请你找到树的重心,并输出将重心删除后,剩余各个连通块中点数的最大值。重心定义:重心是指树中的一个结点,如果将这个点删除后,剩余各个连通块中点数的最大值最小,那么这个节点被称为树的重心。输入格式第一行包含整数 n,表示树的结点数。接下来 n−1 行,每行包含两个整数 a 和 b,表示点 a 和点 b 之间存在一条边。输出格式输出一个整数 m,表示将重心删除后,剩余各个连通块中点数的最大值。数据范围1≤n≤1051

2022-03-16 11:38:31 490

原创 C++算法题 # 37 八数码(广度优先遍历)

题目描述在一个 3×3 的网格中,1∼8 这 8 个数字和一个 x 恰好不重不漏地分布在这 3×3 的网格中。例如:1 2 3x 4 67 5 8在游戏过程中,可以把 x 与其上、下、左、右四个方向之一的数字交换(如果存在)。我们的目的是通过交换,使得网格变为如下排列(称为正确排列):1 2 34 5 67 8 x例如,示例中图形就可以通过让 x 先后与右、下、右三个方向的数字交换成功得到正确排列。交换过程如下:1 2 3 1 2 3 1 2 3 1 2 3x 4 6

2022-03-15 22:19:27 248

原创 C++算法题 # 36 走迷宫(广度遍历)

题目描述给定一个 n×m 的二维整数数组,用来表示一个迷宫,数组中只包含 0 或 1,其中 0 表示可以走的路,1 表示不可通过的墙壁。最初,有一个人位于左上角 (1,1) 处,已知该人每次可以向上、下、左、右任意一个方向移动一个位置。请问,该人从左上角移动至右下角 (n,m) 处,至少需要移动多少次。数据保证 (1,1) 处和 (n,m) 处的数字为 0,且一定至少存在一条通路。输入格式第一行包含两个整数 n 和 m。接下来 n 行,每行包含 m 个整数(0 或 1),表示完整的二维数组迷宫

2022-03-13 19:19:49 443

原创 C++算法题 # 35 n-皇后问题(深度遍历)

题目描述n−皇后问题是指将 n 个皇后放在 n×n 的国际象棋棋盘上,使得皇后不能相互攻击到,即任意两个皇后都不能处于同一行、同一列或同一斜线上。现在给定整数 n,请你输出所有的满足条件的棋子摆法。输入格式共一行,包含整数 n。输出格式每个解决方案占 n 行,每行输出一个长度为 n 的字符串,用来表示完整的棋盘状态。其中 . 表示某一个位置的方格状态为空,Q 表示某一个位置的方格上摆着皇后。每个方案输出完成后,输出一个空行。注意:行末不能有多余空格。输出方案的顺序任意,只要不重复且没有

2022-03-13 16:47:01 1042

原创 C++算法题 # 34 排列数字(深度遍历)

题目描述给定一个整数 nnn,将数字 1∼n1∼n1∼n 排成一排,将会有很多种排列方法。现在,请你按照字典序将所有的排列方法输出。输入格式共一行,包含一个整数 nnn。输出格式按字典序输出所有排列方案,每个方案占一行。数据范围1≤n≤71≤n≤71≤n≤7输入样例:3输出样例:1 2 31 3 22 1 32 3 13 1 23 2 1思路模板题,很容易理解。代码示例#include <iostream>using namespace std

2022-03-11 17:36:11 1280

原创 C++算法题 # 33 字符串哈希

题目描述给定一个长度为 nnn 的字符串,再给定 mmm 个询问,每个询问包含四个整数 l1,r1,l2,r2l1,r1,l2,r2l1,r1,l2,r2,请你判断 [l1,r1][l1,r1][l1,r1] 和 [l2,r2][l2,r2][l2,r2] 这两个区间所包含的字符串子串是否完全相同。字符串中只包含大小写英文字母和数字。输入格式第一行包含整数 nnn 和 mmm,表示字符串长度和询问次数。第二行包含一个长度为 nnn 的字符串,字符串中只包含大小写英文字母和数字。接下来 mmm 行

2022-03-11 16:13:15 631

原创 C++算法题 # 32 模拟散列表

题目描述维护一个集合,支持如下几种操作:I x,插入一个数 x;Q x,询问数 x 是否在集合中出现过;现在要进行 N 次操作,对于每个询问操作输出对应的结果。输入格式第一行包含整数 N,表示操作数量。接下来 N 行,每行包含一个操作指令,操作指令为 I x,Q x 中的一种。输出格式对于每个询问指令 Q x,输出一个询问结果,如果 x 在集合中出现过,则输出 Yes,否则输出 No。每个结果占一行。数据范围1≤N≤10^5−109≤x≤10^9输入样例:5I 1I 2I

2022-03-10 23:25:02 109

原创 C++算法题 # 31 模拟堆

题目描述维护一个集合,初始时集合为空,支持如下几种操作:I x,插入一个数 x;PM,输出当前集合中的最小值;DM,删除当前集合中的最小值(数据保证此时的最小值唯一);D k,删除第 k 个插入的数;C k x,修改第 k 个插入的数,将其变为 x;现在要进行 N 次操作,对于所有第 2 个操作,输出当前集合的最小值。输入格式第一行包含整数 N。接下来 N 行,每行包含一个操作指令,操作指令为 I x,PM,DM,D k 或 C k x 中的一种。输出格式对于每个输出指令 PM,输出

2022-03-10 19:06:56 92

原创 C++算法题 # 30 堆排序

题目描述输入一个长度为 n 的整数数列,从小到大输出前 m 小的数。输入格式第一行包含整数 n 和 m。第二行包含 n 个整数,表示整数数列。输出格式共一行,包含 m 个整数,表示整数数列中前 m 小的数。数据范围1≤m≤n≤10^5,1≤数列中元素≤10^9输入样例:5 34 5 1 3 2输出样例:1 2 3思路这里是堆排序的基本原理,用数组实现堆的5个基本操作:本题的话,只需要实现第2个功能和第3个功能即可。代码示例#include <iostrea

2022-03-10 16:51:28 498

原创 C++算法题 # 29 连通块中点的数量

题目描述给定一个包含 n 个点(编号为 1∼n)的无向图,初始时图中没有边。现在要进行 m 个操作,操作共有三种:C a b,在点 a 和点 b 之间连一条边,a 和 b 可能相等;Q1 a b,询问点 a 和点 b 是否在同一个连通块中,a 和 b 可能相等;Q2 a,询问点 a 所在连通块中点的数量;输入格式第一行输入整数 n 和 m。接下来 m 行,每行包含一个操作指令,指令为 C a b,Q1 a b 或 Q2 a 中的一种。输出格式对于每个询问指令 Q1 a b,如果 a 和

2022-03-10 12:51:41 781

原创 C++算法题 # 28 合并集合

题目描述一共有 n 个数,编号是 1∼n,最开始每个数各自在一个集合中。现在要进行 m 个操作,操作共有两种:M a b,将编号为 a 和 b 的两个数所在的集合合并,如果两个数已经在同一个集合中,则忽略这个操作;Q a b,询问编号为 a 和 b 的两个数是否在同一个集合中;输入格式第一行输入整数 n 和 m。接下来 m 行,每行包含一个操作指令,指令为 M a b 或 Q a b 中的一种。输出格式对于每个询问指令 Q a b,都要输出一个结果,如果 a 和 b 在同一集合内,则输出

2022-03-10 12:09:05 341

原创 C++算法题 # 27 最大异或对

题目描述在给定的 N 个整数 A1,A2……AN 中选出两个进行 xor(异或)运算,得到的结果最大是多少?输入格式第一行输入一个整数 N。第二行输入 N 个整数 A1~AN。输出格式输出一个整数表示答案。数据范围1≤N≤105,0≤Ai<231输入样例:31 2 3输出样例:3思路做这种题首先都要知道暴力方法如何去做,然后再进行时间上的优化。以下笔记为acwing视频截图:代码示例暴力:#include <iostream>using n

2022-03-09 22:46:40 294

原创 C++算法题 # 26 Trie字符串统计

题目描述维护一个字符串集合,支持两种操作:I x 向集合中插入一个字符串x;Q x 询问一个字符串在集合中出现了多少次。共有 N 个操作,输入的字符串总长度不超过 105,字符串仅包含小写英文字母。输入格式第一行包含整数 N,表示操作数。接下来 N 行,每行包含一个操作指令,指令为 I x 或 Q x 中的一种。输出格式对于每个询问指令 Q x,都要输出一个整数作为结果,表示 x 在集合中出现的次数。每个结果占一行。数据范围1≤N≤2∗104输入样例:5I abcQ abc

2022-03-09 18:10:13 85

原创 C++算法题 # 25 KMP字符串

题目描述给定一个模式串 S,以及一个模板串 P,所有字符串中只包含大小写英文字母以及阿拉伯数字。模板串 P 在模式串 S 中多次作为子串出现。求出模板串 P 在模式串 S 中所有出现的位置的起始下标。输入格式第一行输入整数 N,表示字符串 P 的长度。第二行输入字符串 P。第三行输入整数 M,表示字符串 S 的长度。第四行输入字符串 S。输出格式共一行,输出所有出现位置的起始下标(下标从 0 开始计数),整数之间用空格隔开。数据范围1≤N≤1051≤M≤106输入样例:3ab

2022-03-09 17:12:14 620

原创 C++算法题 # 24 滑动串口(单调队列)

题目描述给定一个大小为 n≤106 的数组。有一个大小为 k 的滑动窗口,它从数组的最左边移动到最右边。你只能在窗口中看到 k 个数字。每次滑动窗口向右移动一个位置。以下是一个例子:该数组为[1 3 -1 -3 5 3 6 7],k 为 3。你的任务是确定滑动窗口位于每个位置时,窗口中的最大值和最小值。输入格式输入包含两行。第一行包含两个整数 n 和 k,分别代表数组长度和滑动窗口的长度。第二行有 n 个整数,代表数组的具体数值。同行数据之间用空格隔开。输出格式输出包含两个。

2022-03-08 16:57:13 78

原创 C++算法题 # 23 单调栈

题目描述给定一个长度为 N 的整数数列,输出每个数左边第一个比它小的数,如果不存在则输出 −1。输入格式第一行包含整数 N,表示数列长度。第二行包含 N 个整数,表示整数数列。输出格式共一行,包含 N 个整数,其中第 i 个数表示第 i 个数的左边第一个比它小的数,如果不存在则输出 −1。数据范围1≤N≤1051≤数列中元素≤109输入样例:53 4 2 7 5输出样例:-1 3 -1 2 2思路这是一道经典的单调栈的运用,本题只需要一直维持一个单调栈即可。我们会发现,

2022-03-07 12:27:32 539

原创 C++算法题 # 22 模拟队列

实现一个队列,队列初始为空,支持四种操作:push x – 向队尾插入一个数 x;pop – 从队头弹出一个数;empty – 判断队列是否为空;query – 查询队头元素。现在要对队列进行 M 个操作,其中的每个操作 3 和操作 4 都要输出相应的结果。输入格式第一行包含整数 M,表示操作次数。接下来 M 行,每行包含一个操作命令,操作命令为 push x,pop,empty,query 中的一种。输出格式对于每个 empty 和 query 操作都要输出一个查询结果,每个结果占一行

2022-03-07 10:31:09 323

转载 解决matplotlib画图中文无法显示问题

Ubuntu16.04安装中文字体SimHei

2022-03-06 13:40:06 59

为2022美赛中使用python对数据进行可视化,然后整理了一下模板。

为2022美赛中使用python对数据进行可视化,然后整理了一下模板。

2022-02-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除