自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 7月20日练习第八天

一开始,感觉和吃蘑菇的题比较像,想反着思考,但是没想法,卡顿了,大脑被糊住了,之后考虑错条件了,以为如果选择了一种间距,就只能用这个间距,所以我就枚举间距,用前缀和判断是否可行,结果不匹配。之后 最大的数个数如果是奇数,那A就赢了,否则判断n的奇偶,如果是奇数,A赢,否则输(此时已经很接近正确答案了,但还有不满足的情况,如1,2,2,3,4,4,当A选3时,A必赢)一开始想 最大的数的个数如果是奇数,那A就赢了,否则A输(但是漏了情况,如2,3,3,4,4,A选2就能赢)

2024-07-24 15:00:33 463

原创 蓝桥杯考前复习

给区间[l, r]中的每个数加上c:B[l] += c, B[r + 1] -= c。(2) 对于两个序列,维护某种次序,比如归并排序中合并两个有序序列的操作。S[i, j] = 第i行j列格子左上部分所有元素的和。(1) 对于一个序列,用两个指针维护一段区间。// 具体问题的逻辑。

2024-04-12 22:49:58 290

原创 数学知识(三)——博弈论

给定N堆物品,第i堆物品有Ai个。两名玩家轮流行动,每次可以任选一堆,取走任意多个物品,可把一堆取光,但不能不取。取走最后一件物品者获胜。两人都采取最优策略,问先手是否必胜。我们把这种游戏称为NIM博弈。把游戏过程中面临的状态称为局面。整局游戏第一个行动的称为先手,第二个行动的称为后手。若在某一局面下无论采取何种行动,都会输掉游戏,则称该局面必败。所谓采取最优策略是指,若在某一局面下存在某种行动,使得行动后对面面临必败局面,则优先采取该行动。同时,这样的局面被称为必胜。

2024-02-21 21:52:55 841

原创 搜索与图论(三)

时间复杂度是 O(mlogm), n表示点数,m表示边数。时间复杂度是 O(n2+m), n表示点数,m表示边数。时间复杂度是 O(n+m), n表示点数,m表示边数。时间复杂度是 O(nm), n表示点数,m表示边数。

2024-02-21 12:33:56 353

原创 数学知识(二)

【代码】数学知识二。

2024-02-21 09:36:34 339

原创 搜索与图论(二)

时间复杂度 平均情况下 O(m),最坏情况下 O(nm),n表示点数,m表示边数。(1)spfa 算法(队列优化的Bellman-Ford算法)时间复杂度 O(mlogn), n 表示点数,m表示边数。时间复杂是 O(n2+m), n表示点数,m表示边数。时间复杂度 O(nm), n 表示点数,m 表示边数。时间复杂度是 O(nm),n表示点数,m表示边数。

2024-02-20 22:48:01 382

原创 搜索与图论(一)

树是一种特殊的图(无环连通图),所以树与图的相关操作只看图的就可以。图:(1)有向图:边有方向,如A->Ba.邻接矩阵——g[a][b] 存储边a->bb.邻接表(常用)——n个单链表// 对于每个点k,开一个单链表,存储k所有可以走到的点。h[k]存储这个单链表的头结点// 添加一条边a->b// 初始化idx = 0;(2)无向图:边没有方向,如A-B(可以从A到B,也可以从B到A)——无向图是一种特殊的有向图因此,树与图的操作只需要考虑有向图的操作。

2024-02-20 17:15:34 409

原创 数学知识(一)——数论

定义:在大于1的整数中,只包含1和本身这两个约数,就称为质数,或叫素数。

2024-02-20 16:50:15 331

原创 哈希表、C++STL使用技巧

将一个大的数据集合映射到一个小的数据集合,加快查找速度哈希函数一般会将一个值x%N将一个大的数据集合映射到小的数据集合时,可能会发生冲突(多个不同的值映射成一样的值)

2024-02-02 22:08:19 349

原创 链表与邻接表、栈与队列

用数组模拟链表(又叫静态链表)快,动态创建节点太慢。

2024-02-02 20:12:21 409

原创 Trie、并查集、堆

高效的存储和查找字符串集合的数据结构。

2024-02-01 21:52:08 409 1

原创 常用的高精度模板(整数)

在C/C++中,把大整数的每一位存到数组中,储存的时候低位在前,高位在后,如:123456,a[0]=6,a[5]=1。这是因为我们在做加法、乘法时会进位,在数组末尾加一个数更容易,如果在数组开头加上一个数,就需要将所有数组元素向后移,这比较麻烦。高精度除法储存时高位在前比较好,但是题目可能多种运算混合,所以统一用高位在后。

2024-01-26 11:04:36 406

空空如也

空空如也

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

TA关注的人

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