自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 lanqiao.602 迷宫

【代码】lanqiao.602 迷宫。

2024-04-12 21:13:20 202

原创 acwing2060. 奶牛选美

【代码】acwing2060. 奶牛选美。

2024-04-12 20:08:21 316

原创 Dijkstra最短路径(含打印路径)代码:

#include<iostream>#include<cstring>#include<algorithm>#define INF 0x3f3f3f3fusing namespace std;int v_num;//定点数int e_num;//边数 int dist[100]; //记录原点到i顶点的最短距离int matrix[100][100]; //邻接矩阵bool visited[100]; //int pre[100];

2024-04-12 17:53:16 303

原创 蓝桥杯之注意事项

但是如果LL加数组的画,即使数组是全局变量,也不会自动赋值为0吗?int大概是10位,long long int 19位。如果数据比较大的话,可以(尤其是差分和前缀和那种题目)1.如果没有限定可以输入多少个数的话,可以直接。5.输入矩阵样式的字符,但又没规定一行多少个字。区间一般默认为有两个数,除非特殊说明。for()函数里面的三个条件地顺序。比如二叉树求全深度数值那道题。3.限定最后一个数字为0时候。交换swap()函数。7.巧用一些数学思维。2. 输入多组数据,

2024-04-12 10:20:42 1113

原创 lanqiao.125卡片换位(2016年蓝桥杯C/C++省赛C组)

/存储图的不同状态及不同状态对应的步数。这个代码只能通过7个测试点(总共8个测试点),还有一个通过不了。1. 判断范围时不要写错,不然蓝桥平台容易超时,判错。2. unordered_map的相关操作,详细见。3. string的用法。

2024-04-09 21:36:23 368

原创 lanqiao. 2097青蛙过河(十三届蓝桥杯C++A组) acwing. 4647青蛙过河

而如何判断是否可以过去,只需要判断一下,一个区间内石头的高度是否>=2*x。在于check()函数不会写,这道题可以转换一下思维,转换成两只青蛙在跳。一直让我代码出现错误的点是最后printf的数值,不是mid,一般都是l。遇到一个区间内问题,就要想到差分。check里头的for循环里面。

2024-04-05 15:02:26 285

原创 lanqiao178. 全球变暖(第九届蓝桥杯C++A组/B组) 或 acwing1233. 全球变暖

②.求的是被淹没的岛屿的数量=总岛屿数量-没淹没的岛屿的数量,如果一块岛屿里面的某一块陆地的四面都是陆地,那这个岛屿不会被淹没。

2024-03-30 15:08:02 310

原创 lanqiao106. 正则问题 (第八届蓝桥杯C++A组)或者 acwing 1225. 正则问题

妈呀一开始我不会算正则表达式的最长字符,后来看了一下解释,就想起来了。一开始是想到哪个逆波兰计算的问题,当时是用栈来写的,但是写的很麻烦。用递归又是在想不明白啊。string是字符串的类型,使用的时候也使像字符一样使用,加入定义string str,那么使用的时候要写成str[]比如给的例子:((xx|xxx)x|(x|xx))xx。其次就是一个等号是赋值,两个等号才是相等条件!①括号代表优先计算,②或符号代表二选一。后来查阅了资料,把他当作树来看。具体分析看这一篇文章。

2024-03-28 23:26:34 522

原创 acwing1360. 有序分数

我判断出来是可以暴力的,但对于我难在不知道怎么处理,有小数的比较大小,可能用到float类型,还有就是如何处理重复的情况出现。后来就想难不成是,在【0,1】的区间内搜索,但发现不行,不像二分那样,也不像那种直到具体间隔的题目,比如年份日期那一题。1.注意分子的约束条件:两层循环,先放分母,再放分子。分母,分子没有公约数,并且0/1,0/2这种不重复的话,可以用最大公约数的凡是来处理。3. 分数比较大小。2.cnt放的位置,一开始放错位置了,导致我调试了好久。另一种是分数交叉相乘,除非遇到负数,则符号不变。

2024-03-28 20:12:33 375

原创 前缀和总结

s[i][j]是从左上角是a[1][1]到右下角a[i][j]所有数的和即:前缀和。前缀和有可能不是单独考察,它是一种优化算法的方式。比如这位大佬写的分析例题里面的。前面两个for控制行的区间,后面两个for控制列的区间。计算区间【L,R】的区间所有数据的和,只需。j从i开始的,r从l开始的!理解前缀和的这个概念不然想不通。尤其在那种序列里面的题目。

2024-03-17 20:58:36 197

原创 lanqiao 179 日志统计(2018年第九届蓝桥杯省赛C++B组)或acwing 1238

一开始我是看了算法标签,用双指针的方法,但是后来我不会写,尝试使用暴力,发现没结果。原因:一是逻辑,考虑错了题目要求的是时间段内,而我把他当作超过某个时间就可以了。二是语法,数组问题,把cnt[]计算出来的结果赋给另一个数组,导致输出上有点错误。后来借鉴了别人的代码,还是有点看不懂,注意的是对于这次的函数,struct number才是变量类型,不是num!,可以直接用number作为变量类型。2. bool类型的数组我也比较少使用,后面的代码是很好的解释。首先对数组按照时间上的一个排序(这个问题和。

2024-03-16 15:58:30 312 1

原创 acwing3745 牛的学术圈I(二分法)

因为放在双指针那里,还以为要用双指针去想,后来稍微看了一眼题解的标题二分也行,想一想也是如此哦!2.不用对每篇引用次数做一次排序,因为是对篇数作二分,而不是对引用次数做二分。具体是加到比mid小1的引用次数上!这样想的原因是,这样才有可能说h变大。在这道题就比较特别,常用的就是左闭右开(l

2024-03-14 20:11:42 289

原创 lanqiao3510冶炼金属 或者 acwing4956

因为b-1的缘故,当b=1的时候,b-1=0,那么此时search(A,B-1),而且当A=1e9时,V=1e9只B只肯等于1,所以把V=1e9+1就可以了,(yxc是这么说的:此时不管A是多少,此时B都为1,我感觉这是一个近似),哈哈哈,当然我一开始也是猜测是不是二分,然后又想到二分要单调的,就用用二分找V,当时用的是整除的方法,也就是%,感觉也分的怪怪的。我去年蓝桥杯做的题目,不知道做没做对,但是给的那个数据可以过,其他数据点就不知道了。代码也是学yxc的代码,他的代码写的好简洁明了!

2024-03-07 22:47:18 277 1

原创 Acwing4262. 空调

那么对应的差分f[i]为 0 3 -2 0 2,是0的那个说明这个对应的牛栏要上升的温度和前一个牛栏是一样的,不用管。这道题就是典型的差分问题,遇到那些区域增加的问题一般就是差分问题。这道题的范围都是一个数字,因为用了差分,所以相当于是一起加的。假如:和牛所喜欢的温度相差的温度分别为0 3 1 1 3。差分的学习见专栏第一篇内容。

2024-03-03 18:58:37 392

原创 基础算法:差分

差分实际上就是你想在一个数组里的某一个范围的所有数组+1,那么只要用到差分就可以解决。原理请看上面引用的文章。假如有一个数组a[1,3,6,9,8,5,6]

2024-03-03 17:12:26 858

原创 完全二叉树:lanqiao183

我的方法是按层数存入代码,存入之后再一层一层的把数字加起来比较(关键就是如何确定每一层的开始和结尾的数组下标,这里比较方便的就是需要用到头函数cmath)。3.定义变量,范围大的时候可用long long,但好像是没有longlong int这种写法。比如说,当n=8的时候,如果是<n的话,并不能求出深度,会导致少一层。这个是最简单的思考方法,也有用DFS递归的或者用完全二叉树的性质的。这样就会导致只能处理满二叉树的情况,不能处理那种非满二叉树的情况。4.num赋0的情况,具体见下面代码的注释。

2024-02-22 21:39:34 259 1

原创 数学建模之matlab的使用(搬运总结自用)

1.写入矩阵用writematrix,这个函数可以写入不同文件,不一定是Excel。.matlab一般只能求解最小值,求最大值只需在前面加一个负号。出现这种情况,大概率是因为excel表格宽度不够导致的。计算方差和均值中求列方差和行方差有点不同。明天去学一下线性代数和矩阵乘法。2.矩阵的广播功能方便计算。2.写入一些普通数据。

2024-02-17 17:46:18 383 1

原创 noj1734 排列

②好奇怪这里用scanf("%d",&n);getchar();(是范围类型问题还是因为什么呢?4.正常情况下都是把数组放进栈里面去,这里巧妙就巧妙在于把下标放到栈里面去,因为按照题目那样来说j-i+1是对于下标的计算。3.一开是我看老师的代码并不理解为什么要出栈,后来遍历之后发现是为了处理那些嵌套的情况发生。这道题我看了题目蛮久的,一直理解不了题目当中是如何计算的,后来看了罗永军老师写的文章。5.有两个易忽略的问题:①判断栈是否为空,如果不判断会出现错误。1.其实就是形成一个“凹”

2024-02-15 15:52:51 226 1

原创 lanqiao3745 餐厅排队

1.一开始我以为要把数据全部输入进去,才可以开始输出,后来发现输入3的时候立马有输出,是没有错的。2.不知该如何处理第二次输入的相关格式之类的,后来借鉴了别人的答案修改过来的。3.如果不是最后一个case,一定要break出来,不然一定会出现问题。

2024-02-10 15:25:49 227 1

原创 洛谷1996

【代码】洛谷1996。

2024-02-08 00:16:29 106

原创 Linux考前复习(自用)

a.grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)-----主要和正则表达式一起使用。2.将file1 和file2 合并成一个新的文件file(#如果file以前有内容,则先会清除它们然后再写入合并后的内容。1.查看filename.txt文件内容(但是cat命令一般只适合查看文件内容较少的文件)压缩:tar zcvf FileName.tar.gz DirName。

2024-02-04 11:55:37 1271

原创 数学思维练习一:付钱问题

题目描述几个人一起出去吃饭是常有的事。但在结帐的时候,常常会出现一些争执。现在有n个人出去吃饭,他们总共消费了S元。其中第i个人带了ai元。幸运的是,所有人带的钱的总数是足够付账的,但现在问题来了:每个人分别要出多少钱呢?为了公平起见,我们希望在总付钱量恰好为S的前提下,最后每个人付的钱的标准差最小。这里我们约定,每个人支付的钱数可以是任意非负实数,即可以不是 1 分钱的整数倍。你需要输出最小的标准差是多少。

2023-04-05 16:32:23 117

原创 一元三次方程求解:

2.字符的处理,因为最后是输出两位小数的数字,那么定义的时候就要用double或则float,double的话输入要用%lf,float或则double的输出都是用%.2f。3.注意有个小坑,就是一开始的时候很有可能刚好是那个值需要判断一下。但是中间那个内部循环我真的不明白,为什么又不需要这样判断呢。4.擅长用调用函数的方法,使代码简化,且保持方便。

2023-03-25 14:44:55 172

原创 石头过河问题

在起点和终点之间,有 �N 块岩石(不含起点和终点的岩石)。接下来 �N 行,每行一个整数,第 �i 行的整数 ��(0

2023-03-25 12:22:01 95

原创 二分算法的学习

分成1014次方,才一个区整数空间太大用搜索法,只是整数解搜索一下是可以的有些数不是单调的,先排序,再用二分法。

2023-03-25 12:14:42 64

原创 排序练习一:数位排序

问题描述小蓝对一个数的数位之和很感兴趣, 今天他要按照数位之和给数排序。当 两个数各个数位之和不同时, 将数位和较小的排在前面, 当数位之和相等时, 将数值小的排在前面。例如, 2022 排在 409 前面, 因为 2022 的数位之和是 6, 小于 409 的数位 之和 13。又如, 6 排在 2022 前面, 因为它们的数位之和相同, 而 6 小于 2022。给定正整数nm, 请问对 1 到n采用这种方法排序时, 排在第m个的元 素是多少?输入格式输入第一行包含一个正整数n。

2023-03-12 16:09:48 514

原创 排序算法学习

在极端情况下,例如左部分只有1个数,剩下的全部都在右部分,那么最多可能划分n次,总复杂度是O(n2)。哨兵j先动,哨兵i再动,如果哨兵j遇到的数比t的小停下来,哨兵i遇到的数比t的大停下来,交如换(如果是等于的话还是能够动的,不用停下来)可以观察到,快速排序的代码简洁,代码中的比较、交换、拷贝操作很少快速排序几乎是目前所有排序法中速度最快的方法。qsort()函数用法为,qsort(数组名,元素个数,元素占用的空间(sizeof),比较函数),详见。一般情况下快速排序效率很高,比稳定的归并排序更好。

2023-03-05 15:18:01 80

原创 排列与组合问题

而去重的全排列就是从第一个数字起每个数分别与它后面非重复出现的数字交换。用编程的话描述就是第i个数与第j个数交换时,要求[i,j)中没有与第j个数相等的数。" target="_blank">苍之羽代码" target="_blank">苍之羽代码(一)数据中无重复的。代码参考了

2023-02-21 22:46:23 55

原创 枚举练习三:

小明对数位中含有 2、0、1、9 的数字很感兴趣(不包括前导 0),在 1 到 40 中这样的数包括 1、2、9、10 至 32、39 和 40,共 28 个,他们的和是 574。请问,在 1 到n中,所有这样的数的和是多少?输入描述输入一行包含一个整数 n(1≤n≤10000)。输出描述输出一行,包含一个整数,表示满足条件的数的和。

2023-02-15 14:59:28 114

原创 枚举二: Georg Cantor 数学

我们以 Z 字形给上表的每一项编号。第一项是 1/11/1,然后是 1/2,2/1,3/1,2/2,⋯1/2,2/1,3/1,2/2,⋯。现代数学的著名证明之一是 Georg Cantor 证明了有理数是可枚举的。这里的Z字形,并非是严格意义上的Z,只是像Z而已,这里容易给卡住。题目看起来太复杂了,我们很难用暴力得出答案,只能找一下规律。偶数斜往大走(即往斜向下走),奇数斜往小走(即往斜向)输入 11 个整数 �(1≤�≤107)思路:借鉴了别人的讲解。

2023-02-14 16:25:32 400 1

原创 枚举练习一:日期题

日期合法性判断和日期排序

2023-02-13 00:59:26 111

原创 回文字符判断

回文字符判断

2023-02-08 15:54:05 313 1

原创 C语言统计字符。

统计字符

2023-01-08 12:40:06 154 1

空空如也

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

TA关注的人

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