自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 什么时候需要强制类型转换

【代码】什么时候需要强制类型转换。

2025-04-08 20:27:34 144

原创 深度搜索bfs/dfs

当前节点没有未访问的邻居节点时,然后回溯到上一个节点,不断的尝试,直到访问到目标节点或所有节点都已访问。访问的,dfs 是按照一个路径。dfs 更适合于求解一个。例如:(八数码问题)

2025-04-08 20:27:00 175

原创 STL及其库函数

练习题单:https://www.luogu.com.cn/training/489520#problems1.1初始化:1.1.1一维:1.1.2二维:1.1.2.1行列均不可变vector v[5]可以这样理解:长度为5的v数组,数组中存储的是vector 数据类型,而该类型就是数组形式,故v为二维数组。其中每个数组元素均为空,因为没有指定长度,所以第二维可变长。可以进行下述操作:1.1.2.2行列均可变2.1定义2.2常见函数例题:https://pintia.cn/probl

2025-04-08 09:14:07 814

原创 next_permutation全排列

next_permutation的意思是下一个排列,与其相对的是prev_permutation,即上一个排列。由于prev_permutation和next_permutation的用法是一样的,下面就值讲解next_permutation的基本用法。next_permutation只能获得下一个排列,如果要获得全排列,那么就需要先对数组进行升序排序。next_permutaion(起始地址,末尾地址+1,自定义排序)二、next_permutation的基本用法。

2025-04-08 08:04:33 174

原创 getline(cin,s)

1,使用 cin >> n 读取整数后,输入缓冲区会残留一个换行符。cin.ignore() 会清除它,避免后续的 getline 读取到空行。2,或者在输入前面加一个这个。

2025-04-05 17:08:35 114

原创 输入输出同步流

优点:简洁,在取消同步流的情况下,一般会比scanf更快。用法:接收一个字符串,可以接收空格并输出。用法:接收一个字符串,可以接收空格并输出。

2025-03-22 16:14:22 204

原创 emplace push

push_back用于vector。insert用于map.set。

2025-03-22 10:30:51 130

原创 vector容器

【代码】vector容器。

2025-03-22 09:58:10 176

原创 字符串哈希

STL 对这个序列可以进行查找,插入删除序列中的任意一个元素,而完成这些操作的时间同这个序列中元素个数的对数成比例关系,并且当游标指向一个已删除的元素时,删除操作无效。而一个经过更正的和更加实际的定义应该是:一个集合(set)是一个容器,它其中所包含的元素的值是唯一的。这在收集一个数据的具体值的时候是有用的。集合中的元素按一定的顺序排列,并被作为集合中的实例。一个集合通过一个链表来组织,在插入操作和删除操作上比向量(vector)快,但查找或添加末尾的元素时会有些慢。

2025-03-17 15:12:47 251

原创 回溯法算法

回溯算法能解决如下问题:组合问题:N个数里面按一定规则找出k个数的集合排列问题:N个数按一定规则全排列,有几种排列方式切割问题:一个字符串按一定规则有几种切割方式子集问题:一个N个数的集合里有多少符合条件的子集棋盘问题:N皇后,解数独等等。

2025-03-16 16:02:56 161

原创 陈老师给大家发糖果和约瑟夫问题

方法1:模拟(较麻烦)

2025-03-16 14:53:01 188

原创 关于字符串的find,insert,replace,substr,reverse

关于字符串的find,insert,replace,substr。

2025-03-13 14:26:27 639

原创 动态规划dp

当状态转移方程涉及到上一行和当前行的元素时,通常需要使用二维DP数组。例如,背包问题中的状态转移方程常常涉及到两个维度,一个表示物品,一个表示背包容量。如果问题需要保留更多的信息,可能需要使用二维DP数组来存储这些额外的信息,以便后续计算。如果问题中只需要考虑当前状态和前一个状态之间的关系,而不需要考虑更远的状态,可以选择使用一维DP数组。当状态转移方程只涉及到上一行的元素时,可以使用一维DP数组。对于一些复杂的问题,使用二维DP数组可以更直观地表示问题的状态和状态之间的关系,提高代码的可读性。

2025-03-12 22:32:31 130

原创 二分查找/二分答案/二分浮点

找出最短距离,检查如果有更短距离就移除石头,ans++,如果ans大于要移除的石头数量就向左边查找最短距离,,如果ans小于等于要移除的石头,则向右区间查找更大的最短距离。折半查找,每次取中间,去掉不符合的一般,重复直到找到答案。

2025-03-12 22:32:15 239

原创 最短路径(优化版)dijkstra+优先队列

P市有n个公交站,之间连接着m条道路。P市计划新开设一条公交线路,该线路从城市的东站(s点)修建到西站(t点),请为P市设计一条满足上述条件并且最短的公交线路图。链接:https://ac.nowcoder.com/acm/contest/26077/1007。接下来m行,每行3个数a,b,v描述一条无向道路a——b,长度为v。如果有解,输出一行,表示满足条件的最短公交线路的长度c。第一行有4个正整数n,m,s,t。

2025-02-24 22:36:57 209

原创 Dijksktra算法最短路径C++

加入&就是引用,这里的for(const auto &edge: graph[minIndex]),可以直接对edge操作,更新。P市计划新开设一条公交线路,该线路从城市的东站(s点)修建到西站(t点),请为P市设计一条满足上述条件并且最短的公交线路图。链接:https://ac.nowcoder.com/acm/contest/26077/1007。第一位是符号位,0x表示16进制,int是32位,3就是0011,f就是1111。接下来m行,每行3个数a,b,v描述一条无向道路a——b,长度为v。

2025-02-24 22:09:39 421

原创 洛谷P1914凯撒密码C语言(适合新手)

以上就是今天要讲的内容,本文仅仅简单介绍了一张方法适合C语言新手,凯撒密码经典问题。

2024-11-11 22:29:15 324 1

原创 洛谷B2125最高分数的姓名(C/C++)

本文简单介绍了两种方法,C和C++,洛谷B2125最高分数的姓名,适合新手入门。

2024-11-11 22:27:43 270

原创 洛谷P2550彩票摇奖C语言(适合新手)

洛谷P2550彩票摇奖C语言(适合新手)

2024-11-11 22:25:18 441 1

原创 排序算法C/C++

冒泡排序和C++sort排序

2024-11-11 19:29:31 309

原创 洛谷P5707上学迟到

给定一个双精度浮点数,对其向上取整。向上取整规则如下:对于正数,取得不小于这个正数的最小的那个正整数。比如3.7,向上取整为4;2.01向上取整为3;5.0向上取整为5。对于负数,取得不大于这个负数的最大的那个负整数。比如-3.7,向上取整为-4;-2.01向上取整为-3;-5.0向上取整为-5提示:以下是本篇文章正文内容,下面案例可供参考。

2024-11-11 19:27:07 363

空空如也

空空如也

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

TA关注的人

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