自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(106)
  • 收藏
  • 关注

原创 priority_queue 的常见用法详解

1,priority_queue 又称为优先队列,其底层是用堆来进行实现的。在优先队列中,队首元素一定是当前队列中优先级最高的那一个。当然,可以在任何时候往优先队列里面加入元素,而优先队列底层的数据结构堆(heap)会随时调整结构,使得每次的队首元素都是优先级最高的,话不多说让我们一起来了解一下吧。2.priority_queue 的定义 要使用优先队列,应先添加头文件 #include<queue> ,并在头文件下面加上“using namespace std;”。其定义..

2021-08-15 22:57:20 20682 1

原创 Bellman-Ford 解决负权边问题

1.前面已经说到 Dijkstra 并不能解决负权边问题,而 Floyd 算法需要三层 for 循环极有可能出现超时问题,这里我们引进了 Bellman-Ford 算法。核心代码如下:for(k=1;k<n;k++){ for(i=1;i<=m;i++) { if(dis[v[i]]>dis[u[i]]+w[i]) { dis[v[i]]=dis[u[i]]+w[i];

2021-08-15 11:31:36 208

原创 如何用队列实现邻接表

1.题目引入:In the age of television, not many people attend theater performances. Antique Comedians of Malidinesia are aware of this fact. They want to propagate theater and, most of all, Antique Comedies. They have printed invitation cards with all the nec

2021-08-14 19:25:40 120

原创 如何用 floyd 算法 解决从一个出发再回到这个顶点的负权值问题

1.题目引入:While exploring his many farms, Farmer John has discovered a number of amazing wormholes. A wormhole is very peculiar because it is a one-way path that delivers you to its destination at a time that is BEFORE you entered the wormhole! Each of FJ'

2021-08-13 10:45:34 560

原创 string 容器的常见用法详解

1.在C语言中,一般使用字符数组 char str[]来存放字符串,但是使用字符数组有时会显得操作麻烦,而且容易因经验不足而产生一些错误。为了使编程者可以更方便地对字符串进行操作,在C++中引入 string 类型。如果要使用string,需要添加string头文件,即 #include<string> (注意 string.h 和string 是不一样的头文件)。除此之外,还需要在头文件下面加上一句:“using namespace std;” 。2. 如果要读入和输出整个字符串,则只

2021-08-07 09:41:43 193

原创 map容器的常用用法详解

【代码】map容器的常用用法详解。

2021-08-06 11:12:13 3824

原创 vector(容器)用法

1.vector的定义:vector<typename> name;上面这个定义其实相当于是一维数组name[size],只不过其长度可以根据需要进行变化,比较节省空间,说通俗了就是“变长数组”。和一维数组一样,这里的 typename 可以是任何基本类型,例如 int ,double, char, 结构体等,也可以是STL标准容器,例如:vector ,set, queue,等。需要注意的是,如果 typename 也是一个 STL容器,定义的时候要记得在 >> 符..

2021-08-05 17:36:58 780

原创 (数位)dp

一.题目引入:杭州人称那些傻乎乎粘嗒嗒的人为62(音:laoer)。杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除个别的士司机和乘客的心理障碍,更安全地服务大众。不吉利的数字为所有含有4或62的号码。例如:62315 73418 88914都属于不吉利号码。但是,61152虽然含有6和2,但不是62连号,所以不属于不吉利数字之列。你的任务是,对于每次给出的一个牌照区间号,推断出交管局今次又要实际上给多少辆新的士车...

2021-07-28 08:21:46 52

原创 关于修改了注册表路径桌面刷新如何改回的问题(亲历)

1.前几天在学习机器学习相关内容的时候,出现了用户名为中文,路径不能识别的问题,如下:然后看到一些博客和帖子,通过修改注册表路径将中文改成英文,结果重启后桌面被刷新,当前桌面被卡在临时文件里,导致每次重启后桌面都会刷新。很多小伙伴将路径重新改回去桌面就会恢复,但我的将路径改回去后依然不起作用,这主要是原桌面在修改注册表是没有开启管理员权限,这导致虽然名字改了过去但原桌面权限不够路径不能更改,这才会出现临时文件虽然删了但每次重启就又会多出一个临时文件,桌面就会被锁死在临时桌面。显然如果你开了管

2022-04-19 23:28:06 1587 7

原创 连通块中点的数量 (并查集)

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

2022-02-18 15:57:40 260

原创 走 迷 宫 (bfs)

1.题目引入:下图给出了一个迷宫的平面图,其中标记为11的为障碍,标记为00的为可以通行的地方。010000000100001001110000迷宫的入口为左上角,出口为右下角,在迷宫中,只能从一个位置走到这 个它的上、下、左、右四个方向之一。对于上面的迷宫,从入口开始,可以按DRRURRDDDR的顺序通过迷宫, 一共1010步。其中D、U、L、RD、U、L、R分别表示向下、向上、向左、向右走。 对于下面这个更复杂的迷宫(3030行5050列),请...

2022-01-23 22:51:54 552

原创 包子凑数 (完全背包求数量问题)

1.题目引入:小明几乎每天早晨都会在一家包子铺吃早餐。他发现这家包子铺有NN种蒸笼,其中第ii种蒸笼恰好能放A_i个包子。每种蒸笼都有非常多笼,可以认为是无限笼。每当有顾客想买X个包子,卖包子的大叔就会迅速选出若干笼包子来,使得这若干笼中恰好一共有X个包子。比如一共有 3 种蒸笼,分别能放 3、4 和 5 个包子。当顾客想买 11 个包子时,大叔就会选 2 笼 3 个的再加 1 笼 5 个的(也可能选出 1 笼 3 个的再加 2 笼 4 个的)。当然有时包子大叔无论如何也凑不...

2022-01-20 15:17:57 1266 1

原创 k 倍区间(思维+前缀和)

目录1.题目引入:2.样例输出:3.代码如下:1.题目引入:给定一个长度为NN的数列,A1,A2,…ANA1,A2,…AN,如果其中一段连续的子序列Ai,Ai+1,…AjAi,Ai+1,…Aj之和是KK的倍数,我们就称这个区间[i,j][i,j]是K倍区间。你能求出数列中总共有多少个KK倍区间吗?输入格式第一行包含两个整数NN和KK。以下NN行每行包含一个整数AiAi。输出格式输出一个整数,代表K倍区间的数目。...

2022-01-20 14:04:28 578

原创 方格分割 (dfs+思维)

1.题目描述:6x6的方格,沿着格子的边线剪开成两部分。 要求这两部分的形状完全相同。试计算: 包括这3种分法在内,一共有多少种不同的分割方法。 注意:旋转对称的属于同一种分割法。如下是一种分割方式:2.思路分析:显然这道题是一个搜索问题,问题是我们如何来搜索?我们发现他是一个 6*6的一个表格,并且他分割下来的两部分彼此相互对称,那我们就可以将每次搜索的点以及它的对称点都进行标记,!!注意:很多人可能会犯一种错误,就是我那(3,3)这个格子去遍历了,但我们发现并不...

2022-01-16 16:27:22 826 1

原创 多重背包问题

1.题目引入:有 N 种物品和一个容量是 V 的背包。第 i 种物品最多有 si 件,每件体积是 vi,价值是 wi。求解将哪些物品装入背包,可使物品体积总和不超过背包容量,且价值总和最大。输出最大价值。输入格式第一行两个整数,N,V,用空格隔开,分别表示物品种数和背包容积。接下来有 N 行,每行三个整数 vi,wi,si,用空格隔开,分别表示第 i 种物品的体积、价值和数量。输出格式输出一个整数,表示最大价值。数据范围0<N,V≤1000<vi,wi,s

2022-01-13 22:21:08 247

原创 走 迷 宫 (bfs 算法应用---记录最短步数)

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

2022-01-12 13:24:35 294

原创 电话号码 (哈希表+模拟)

1.题目引入:一个电话销售员正在整理他的电话簿。电话簿中记录了他的全部客户的电话号码。一个客户可能有不止一个电话号码。不同客户可能拥有完全相同的电话号码。电话簿中一共包含nn条记录。每条记录都是首先包含一个字符串,表示客户的姓名,然后包含一个整数,表示本条记录包含的电话号码数量,最后是本条记录所包含的电话号码。不同客户的姓名两两不同,所以如果两条记录包含的客户姓名相同,那么我们认为这都是记录的同一人的电话信息。同一记录中可能包含相同的电话号码,不同记录中也可能包含相..

2022-01-10 15:54:38 437

原创 将字符串转换成整数 (语法)

这里我们将提到 stringstream ,在流中利用它将它进行转换,当然它可以对不同类型进行转换,stringstream 函数在 #include<sstream> 头文件下。应用如下:1.题目引入:请你写一个函数 StrToInt,实现把字符串转换成整数这个功能。当然,不能使用 atoi 或者其他类似的库函数。数据范围输入字符串长度[0,20][0,20]。2.样例输出: 样例输入:"123"输出:123注意:你的函数应满.

2022-01-10 13:15:43 850

原创 最长合法括号子序列(括号序列+贪心)

1.题目引入:一个合法的括号序列满足以下条件:序列()被认为是合法的。 如果序列X与Y是合法的,则XY也被认为是合法的。 如果序列X是合法的,则(X)也是合法的。例如,(),()(),(())这些都是合法的。现在,给定一个由(和)组成的字符串。请你求出其中的最长合法括号子序列的长度。注意,子序列不一定连续。输入格式共一行,一个由(和)组成的字符串。输出格式一个整数,表示最长合法括号子序列的长度。数据范围前五个测试点满足,1≤输入字符串的长...

2022-01-10 12:33:07 2812 1

原创 类+字符串处理

1.题目引入:字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如输入字符串"abcdefg"和数字22,该函数将返回左旋转22位得到的结果"cdefgab"。注意:数据保证nn小于等于输入字符串的长度。数据范围输入字符串长度[0,1000][0,1000]。2.样例输出:样例输入:"abcdefg" , n=2输出:"cdefgab"3.代码如下:利用 STL容器:...

2022-01-09 14:07:32 516

原创 翻 硬 币 (一道题带你理解指针、引用符的原理如何应用)

1.题目引入:小明正在玩一个“翻硬币”的游戏。桌上放着排成一排的若干硬币。我们用 * 表示正面,用 o 表示反面(是小写字母,不是零)。比如,可能情形是:**oo***oooo如果同时翻转左边的两个硬币,则变为:oooo***oooo现在小明的问题是:如果已知了初始状态和要达到的目标状态,每次只能同时翻转相邻的两个硬币,那么对特定的局面,最少要翻动多少次呢?我们约定:把翻动相邻的两个硬币叫做一步操作。输入格式两行等长的字符串,分别表示初始状态和要达到的目标状态。输出

2022-01-07 15:46:48 79

原创 python --操作列表

1.创建数值列表列表非常适合用于存储数字集合,而 python 提供了很多工具,可帮助你高效地处理数字列表。例如: 在游戏中,需要跟踪每个角色的位置,还可能需要跟踪玩家的几个最高得分;在数据可视化中,处理的几乎都是由数(如 温度,距离,人口数量等)组成的集合。1.1.range()的使用range()要打印一系列数同样是左闭右开for value in range(1,5): print(value) 1234Python 函数 range() 能够轻松地.

2022-01-06 16:55:15 565

原创 今日头条2019,笔试题(浮点二分)

1.题目引入:有NN根绳子,第ii根绳子长度为LiLi,现在需要MM根等长的绳子,你可以对NN根绳子进行任意裁剪(不能拼接),请你帮忙计算出这MM根绳子最长的长度是多少。输入格式第一行包含22个正整数N、MN、M,表示原始绳子的数量和需求绳子的数量。第二行包含NN个整数,其中第ii个整数LiLi表示第ii根绳子的长度。输出格式输出一个数字,表示裁剪后最长的长度,保留两位小数。数据范围1≤N,M≤1000001≤N,M≤1000...

2022-01-04 18:04:47 536

原创 Flood Fill 染色(洪水填充)---如何解决图内连通块问题

1.题目引入:有一间长方形的房子,地上铺了红色、黑色两种颜色的正方形瓷砖。你站在其中一块黑色的瓷砖上,只能向相邻(上下左右四个方向)的黑色瓷砖移动。请写一个程序,计算你总共能够到达多少块黑色的瓷砖。输入格式输入包括多个数据集合。每个数据集合的第一行是两个整数WW和HH,分别表示xx方向和yy方向瓷砖的数量。在接下来的HH行中,每行包括WW个字符。每个字符表示一块瓷砖的颜色,规则如下1)‘.’:黑色的瓷砖;2)‘#’:红色的瓷砖;3)‘@’:黑色的瓷...

2021-12-28 22:00:43 197

原创 动态规划 -线性DP(数字三角形)

1.题目引入给定一个如下图所示的数字三角形,从顶部出发,在每一结点可以选择移动至其左下方的结点或移动至其右下方的结点,一直走到底层,要求找出一条路径,使路径上的数字的和最大。 7 3 8 8 1 0 2 7 4 44 5 2 6 5输入格式第一行包含整数nn,表示数字三角形的层数。接下来nn行,每行包含若干整数,其中第ii行表示数字三角形第ii层包含的整数。输出格式输出一个整数,表...

2021-12-26 19:10:45 510

原创 递增三元组 (如何灵活使用前缀和)

1.题目引入:给定三个整数数组A=[A1,A2,…AN]A=[A1,A2,…AN],B=[B1,B2,…BN]B=[B1,B2,…BN],C=[C1,C2,…CN]C=[C1,C2,…CN],请你统计有多少个三元组(i,j,k)(i,j,k)满足:1≤i,j,k≤N1≤i,j,k≤N Ai<Bj<CkAi<Bj<Ck输入格式第一行包含一个整数NN。第二行包含NN个整数A1,A2,…ANA1,A2,…AN。第三行包含NN个整数...

2021-11-20 22:30:25 357

原创 dp +01背包

1.题目引入:由于在维护世界和平的事务中做出巨大贡献,Dzx被赠予糖果公司2010年5月23日当天无限量糖果免费优惠券。在这一天,Dzx可以从糖果公司的NN件产品中任意选择若干件带回家享用。糖果公司的NN件产品每件都包含数量不同的糖果。Dzx希望他选择的产品包含的糖果总数是KK的整数倍,这样他才能平均地将糖果分给帮助他维护世界和平的伙伴们。当然,在满足这一条件的基础上,糖果总数越多越好。Dzx最多能带走多少糖果呢?注意:Dzx只能将糖果公司的产品整件带走。输...

2021-11-14 21:01:06 88

原创 博 弈

1.题目引入:Alice 和 Bob 正在玩一个取石子游戏。共有nn个石子,双方轮流采取行动。每当轮到一人行动时,该名玩家需要从石子堆中取走恰好11或22或kk个石子。如果轮到一人行动时,已经没有石子可取,则该名玩家失败。已知,双方都会采取最优策略,且 Alice 率先行动。请问,最终谁将获胜。输入格式第一行包含整数TT,表示共有TT组测试数据。每组数据占一行,包含两个整数n,kn,k。输出格式每组数据输出一行结果,如果 Alice ...

2021-11-05 21:01:59 1917

原创 n 皇后 问题 (dfs的应用)

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

2021-10-31 20:55:31 313

原创 C++ 中如何实现链表的插入删除输出操作

1.首先我们需要创建一个结构体并将其初始化:struct Node{ int val; Node* next; Node(int _val):val(_val),next(NULL) {}};这里多讲一点这个 struct 内的变量都默认是 public:型而 class则默认是 private :型2.这里我们用 new实现节点的创建并将其赋值两个操作: Node* p=new Node(1); Node* q=new Node(2); Node* o...

2021-10-30 12:25:32 376

原创 C++ 中字符串不用string 如何输入输出

1.题目引入:给定一个字符串,请你编写一个函数,void print(char str[]),将这个字符串打印出来。输入格式共一行,包含一个字符串。输出格式共一行,表示打印出的字符串。数据范围1≤字符串长度≤1001≤字符串长度≤1002.输入样例:I love AcWing.输出样例:I love AcWing.3.代码输出:#include<cstdio>#include<cstring>#include.

2021-10-27 19:35:52 439

原创 思 维 题

1.题目引入:达尔星有nn个强大的下级战士,编号1∼n1∼n。其中第ii名战士的战斗力为riri。战士aa可以成为战士bb的战斗导师,当且仅当ra>rbra>rb且两人之间不存在矛盾。给定每个战士的战斗力值以及战士之间存在的kk对矛盾关系。请你计算,每个战士可以成为多少战士的战斗导师。输入格式第一行包含两个整数nn和kk。第二行包含nn个整数r1,r2,…,rnr1,r2,…,rn。接下来kk行,每行包含两个整数...

2021-10-24 21:36:49 396

原创 快 速 排 序 模 板

1.题目引入:给定你一个长度为nn的整数数列。请你使用快速排序对这个数列按照从小到大进行排序。并将排好序的数列按顺序输出。输入格式输入共两行,第一行包含整数nn。第二行包含nn个整数(所有整数均在1∼1091∼109范围内),表示整个数列。输出格式输出共一行,包含nn个整数,表示排好序的数列。数据范围1≤n≤1000001≤n≤1000002.样例输出:输入样例:53 1 2 4 5输出样例:1 2 3 4 5...

2021-10-21 21:48:05 90

原创 变 型 背 包 问 题

1.题目引入:电子科大本部食堂的饭卡有一种很诡异的设计,即在购买之前判断余额。如果购买一个商品之前,卡上的剩余金额大于或等于5元,就一定可以购买成功(即使购买后卡上余额为负),否则无法购买(即使金额足够)。所以大家都希望尽量使卡上的余额最少。某天,食堂中有n种菜出售,每种菜可购买一次。已知每种菜的价格以及卡上的余额,问最少可使卡上的余额为多少。Input多组数据。对于每组数据:第一行为正整数n,表示菜的数量。n<=1000。第二行包括n个正整数,表示每种菜的价格。价格不超过...

2021-10-11 18:40:22 53

原创 K M P 算法模板

1.题目引入:一块花布条,里面有些图案,另有一块直接可用的小饰条,里面也有一些图案。对于给定的花布条和小饰条,计算一下能从花布条中尽可能剪出几块小饰条来呢?Input输入中含有一些数据,分别是成对出现的花布条和小饰条,其布条都是用可见ASCII字符表示的,可见的ASCII字符有多少个,布条的花纹也有多少种花样。花纹条和小饰条不会超过1000个字符长。如果遇见#字符,则不再进行工作。Output输出能从花纹布中剪出的最多小饰条个数,如果一块都没有,那就老老实实输出0,每个结果之间应换..

2021-10-10 11:28:24 115

原创 马 拉 车 模板题

1.题目引入:Andy the smart computer science student was attending an algorithms class when the professor asked the students a simple question, "Can you propose an efficient algorithm to find the length of the largest palindrome in a string?"A string is s.

2021-10-10 09:27:44 354

原创 约 瑟 夫 环

1.题目引入:Let’s play a stone removing game.Initially, n stones are arranged on a circle and numbered 1, …, n clockwise (Figure 1). You are also given two numbers kand m. From this state, remove stones one by one following the rules explained below, until

2021-10-07 21:14:11 100

原创 思 维 题 ( STL的灵活应用)

1.题目引入:给出一颗有根树,总共nn个节点,如果一个节点的度不小于它所有的儿子以及他的父亲的度(如果存在父亲或者儿子),那么我们称这个点为pp节点,现在给你一棵树你需要统计出pp节点的个数。这里的度数指树上的度数,即一个节点的子节点数。输入格式输入的第一行包含一个整数tt(1\le t\le 1001≤t≤100),表示数据组数。接下来tt组数据,每组数据第一行一个数nn(1\le n\le 10001≤n≤1000),表示树的节点数。然后n-1n−1行,...

2021-10-07 10:45:08 158

原创 二项式定理的应用(快速幂+组合数的计算)

1.题目引入:给定一个多项式(ax+by)k(ax+by)k,请求出多项式展开后xnymxnym项的系数。输入格式共一行,包含55个整数,分别为a,b,k,n,ma,b,k,n,m每两个整数之间用一个空格隔开。输出格式输出共11行,包含一个整数,表示所求的系数,这个系数可能很大,输出对1000710007取模后的结果。数据范围对于30%30%的数据,有0≤k≤100≤k≤10。对于50%50%的数据,有a=1,b=1a=1,b=1。对于...

2021-10-06 21:45:47 581

原创 蛇 形 矩 阵

1.题目引入:在n×nn×n方陈里填入1,2,⋯,n×n1,2,⋯,n×n,要求填成蛇形。例如n=4n=4时方陈为:10 11 12 19 16 13 28 15 14 37 6 5 4输入格式直接输入方陈的维数,即nn的值。(n≤100n≤100)输出格式输出结果是蛇形方阵。2.样例输出:Sample Input3Sample Output7 8 16 9 25 4 3当然这个题就是简单的模拟题,关键是怎样模拟,...

2021-10-06 17:36:53 98

深度学习,YOLOv5,交通标志检测

基于YOLOv5的交通标志检测,模型已训练好,适用于课设大作业、对于平时学习了解YOLOv5有重要意义。本项目还可以部署到Jetson nano上面进行TensorRT加速等。

2024-06-02

空空如也

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

TA关注的人

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