自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 十五届蓝桥杯比赛总结

断断续续准备了快4个月,但是感觉刷题量还是少了,很多题一看知道用那些算法、数据结构解题,但是就是没思路写不出来。还有那题有“诗韵”的数列,刚开始没多想,直接用dfs暴力写了,花了40分钟,后来构造测试数据的时候发现思路想错了,只能过给的案例。一共写出来了2题填空,1~2题大题,剩下的都是能暴力就暴力,实在不会的我就直接打印测试用例,不知道能不能骗点分。那题仓库统计商品数量为0的题,应该可以用线段树+二分来写的,但是不是很记得线段树的操作。,加上只剩下半小时了,就没多想,直接用for模拟了,应该能拿点分吧。

2024-04-13 14:37:38 155 1

原创 线段树简介

是一个二叉树,用于求出数组中一段数的和(前缀和)、给某个位置的数加上一个数、求一段区间的最大值支持的操作:单点修改、区间查询时间复杂度:修改和查询都是Olognpushup(u):用子节点的信息来更新当前节点信息build(u, l, r):在一段区间上初始化线段树, u表示根结点,l表示左边界,r表示右边界modify(u, l, r):单点修改, u当前节点的编号,x要修改的位置,v要修改的值。

2024-03-18 19:05:52 1075

原创 归并排序和快速排序

开一个临时数组tmp,指针i指向数组p,指针j指向数组q,比较p[i]和q[j],谁小就把元素放到数据tmp(从小到大排序),然后指针向后移,继续比较…2、调整区间,以L[l]为基准,使得所有=L[l]的元素都在L[l]的右边。1、随机确定分界点,比如:L[l]、L[(l+r)/2]、L[r]1.将数组分割为2个局部数组,每个数组长度为n/2。基于分治法,需要递归,每次递归时需要找一个枢轴。快速排序是不稳定排序算法。归并排序是稳定排序算法。

2024-03-15 17:33:07 335 1

原创 闫氏DP求解01背包问题

/ 物品数量 和 背包容积int N, V;// 每个物品体积 和 价值// dp数组int main()i

2024-03-13 16:43:15 1008

原创 一维前缀和和二维前缀和

黄色部分面积=蓝色部分面积s[3][3]-橙色部分面积s[3][1]-粉色部分面积s[1][3]+灰色部分面积s[1][1] (灰色部分被减了两次所以要加回来)二维前缀和数组[2][2] = 17,它是原二维数组左上角(1,1)到右下角(2,2)所有数的和。等于原数组中蓝色部分+紫色部分-黄色部分+灰色部分。由容斥原理计算二维前缀和数组s[2][3]紫色部分=前缀和数组s[1][3]的值。蓝色部分=前缀和数组s[2][2]的值。黄色部分=前缀和数组s[1][2]的值。灰色部分=原数组a[2][3]的值。

2024-03-10 21:02:51 1779 1

原创 spfa算法

把1号点加入到队列(对列里边存的是所有距离变小了的节点编号)SPFA只要不是负环就能用,一般用于求单源最短路问题。该算法是对Bellman-Ford优化。时间复杂度:O(m)2.遍历t的所有出边。

2023-12-22 11:01:12 374

原创 朴素版Dijkstra和堆优化版Dijkstra算法

1号点的距离初始化为零,其他点初始化成无穷大:dist[1]=0 dist[other]=+∞。遍历dist数组 找到一个没有确定最短路径的点state[j]=false,且该点距离源点最近。循环:每次循环都能确定一个点的最短距离,循环n次,求出每一个点到起点的最短距离。初始化state数组(state数组保存所有点的 已确定的最短距离)判断从1走到x和从1走到t再走到x的距离,如果比较短,就更新x的距离。朴素版中,每次循环都要遍历dist数组,找到距离源点最近的点t。用t更新他指向的其他点x的距离。

2023-12-22 10:32:03 1173

原创 第十五届蓝桥杯模拟赛(第二期)题解

第一题和第二题有手就行这道题我使用的是BFS。

2023-12-03 10:21:08 169 1

原创 试除法判定质数

因此判断一个数为质数时,只需判断较小的那个数能否整除n即可,即只需枚举d

2023-11-29 11:31:30 180 1

原创 3 算法的复杂度

忽略常数项,只保留最高阶的项,且系数变为1,最终时间复杂度:S(n)=O(n)空间复杂度用S(n)表示 S(space) eg.S(n)=O(n)算法时间开销T(n)与问题规模n的关系(T表示“time”)②分析该基本操作的执行次数x与问题规模n的关系x=f(n)所以时间复杂度为:S(n)=O(4)+O(4n)+O(4)③x的数量级O(x)就是算法时间复杂度T(n)③x的数量级O(x)就是算法空间复杂度S(n)②x的数量级O(x)就是算法空间复杂度S(n)记作:T(n)=O(f(n)) 叫做大O记法。

2023-11-29 10:29:39 32 1

原创 2 算法简介

定义:描述求解某个问题的步骤(计算机指令)

2023-11-29 10:24:22 20 1

原创 1 数据结构简介和分类

定义按照一定规则,操作元素的,集合作用描述在计算机中数据元素的排列方式,强调数据元素之间的关系,是数据的逻辑结构基本术语数据:可以输入到计算机中,能被计算机程序处理的符号 数字、字符、声音、图像等数据对象:具有相同性质的数据元素的集合,是数据的子集数据元素:组成数据的基本单位,在计算机中作为整体处理,一个数据元素由若干个数据项组成例如:在人类中,组成人类的数据元素是人数据项:数据项是数据不可分割的最小单位例如:数据元素人,有年龄,名字,性别这些数据项。

2023-11-29 10:20:09 42 1

原创 动态规划求最长路径 蓝桥杯 p505

顶层到i,j(第i层j结点)的最大路径 = i-1层j结点的路径 与 i-1层j结点的路径 的最大值 + 当前结点的路径值。那我们就定义dp[i][j]的含义为:从第1层走到(i, j) 这个位置时,此时的最大路径为 dp[i][j]。由方程dp[i][j] = max(dp[i-1][j], dp[i-1][j-1])+dp[i][j]可知,当i=0 或 j=0 时,i-1=-1,j-1=-1 数组越界了,所以当i=0或j=0时是不能带入上式求解的。上图给出了一个数字三角形。

2023-10-31 22:56:07 387 1

原创 题目 3180: 蓝桥杯2023年第十四届省赛真题-棋盘

每次操作会将棋盘上某个范围内的所有棋子的颜色取反 (也就是白色棋子变为黑色,黑色棋子变为白色)。小蓝拥有 n × n 大小的棋盘,一开始棋盘上全都是白子。小蓝进行了 m 次操作,请输出所有操作做完后棋盘上每个棋子的颜色。,优化一下输入输出,能过全部案例。1、两重循环,时间复杂度是。

2023-10-22 21:15:43 478 4

原创 蓝桥杯P3179——平均

小明发现数组里每种数出现的次数不太平均,而更改第 i 个数的代价为bi,他想更改若干个数的值使得这 10 种数出现的次数相等(都等于n/10),请问代价和最少为多少。使用循环,优先更改权值较低的数,并将更改那个数的权值相加,循环次数= 出现相等的次数 - 该数的出现次数。改若干个数的值,使给出的数,出现的次数相等(都等于n/10),求更改的这些数需要的最少代价和。遍历数组,找到一个数的出现次数 > 出现相等的次数时,则表示要更改这个数。统计每个数出现的次数,用数组保存起来。读入每个数 和 它的权值。

2023-10-18 22:01:45 563 2

原创 第一个direct3d程序

【代码】第一个direct3d程序。

2022-11-27 23:17:15 23

原创 创建win32窗口程序

VS2022 选择Windows桌面向导-选择桌面应用程序-空项目。

2022-11-26 00:00:47 119

空空如也

空空如也

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

TA关注的人

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