- 博客(24)
- 收藏
- 关注
原创 牛客周赛 Round 77 题解
那么这个权重一定在二进制的某一个位上有着相同的1(与运算全1出1,有0出0),因此可以使用并查集来维护这个有着二进制位同为1的集合,就是如果这个两个数可以在同一个社交网络,那么这个两个数所在的两个集合也可在同一个社交网络。,子串的自审值为0的情况只有一种可能,那就是这个子串全是0,故此我们可以用【核心思路】来快速求自审值的和,因为自审值只可能是0或1,所以有字符1的子串的个数即为答案。,这就是线性同余算法,也就是若y可以被a和b的最大公约数整除,那么y就一定通过a和b两个数字构造出来,x也是同理。
2025-01-27 23:36:51
1219
原创 包管理工具随记
中的scripts字段允许定义常用命令脚本。npm run 脚本别名start:可以直接运行npm start,默认会执行。test:执行npm test运行测试脚本。在scripts中可以使用所有的命令行指令,多个命令通过&&连接。NPM 是强大的包管理工具,掌握常用命令和配置方式可以大幅提升开发效率。与 Yarn 类似,NPM 也支持锁定版本文件(),并在版本 5+ 后优化了性能和安全性。根据项目需求选择合适的工具更为重要!与 NPM 和 Yarn 类似,PNPM 支持在的scripts。
2025-01-27 22:01:02
1133
原创 HTTPS协议简述
具体原理较复杂,常结合区块链技术,实现分布式的可信签名。的组合,即在 HTTP 的基础上加入了安全性机制,主要通过加密传输、身份认证和数据完整性保护来确保通信的安全性。对称加密是一种加密方式,服务器和客户端共用一个密钥。信息通过密钥进行加密和解密,密钥本身也需要在双方之间传递。CA(Certificate Authority)是数字证书认证机构,用于解决公钥来源不明的问题。,包括对称加密、非对称加密和数字证书机制。服务器的公钥需要由 CA 进行签名,生成。,数字证书可以帮助客户端验证公钥的真实性。
2025-01-22 23:21:59
469
1
原创 前端模块化
ES 模块化(ESM)是 JavaScript 的原生模块化标准,目前是浏览器和 Node.js 主流支持的模块化规范。CommonJS 是为 Node.js 提供模块化支持而诞生的,它专注于服务端开发,是一种同步加载模块的规范。主要特点是提前加载模块,适合依赖较多的场景。主要特点是按需加载模块,更灵活。的引用,不能直接覆盖。,否则会导致导出失效。
2025-01-21 21:43:05
572
1
原创 Sublime Text 配置 C++(竞赛向)
打开 Sublime 的 Preferences > Key Bindings。在命令行输入 python3,如果未安装会跳转到下载页面。或直接访问 Python 官网 下载适合的版本。在题目页面点击浏览器小绿标插件,爬取样例数据。右键浏览器顶部的小绿标插件,选择 选项。字体,提升代码可读性和美观。保存并重启 Sublime。到此,你的主要功能已经完善。打开 Sublime,按。文件,写好简单的代码。
2025-01-20 16:49:40
1092
原创 #CSS 实用属性总结
元素用于定义表格结构,但随着CSS的发展,其使用频率大幅下降。CSS中的单位用于指定元素的尺寸、边距、间距、字体大小等。是一个布尔属性,可以应用于任意HTML元素,赋予其可编辑性。,避免尺寸计算的困扰。CSS伪类选择器是一种用于选择特定状态元素的强大工具。绝对单位表示固定的尺寸,通常不随视窗大小或其他因素变化。几乎所有可以设置尺寸的属性都支持百分比,但它们的。相对单位依赖于其他元素或环境,常用于响应式设计。这类属性可以限制元素的尺寸,避免其过大或过小。用于动画的持续时间或延迟时间。
2025-01-18 15:27:20
1074
原创 图算法和数论算法基础模板汇总
Dijkstra是一种单源最短路径算法,适用于边权为非负的图。通过一个优先队列,每次扩展当前距离最短的节点,逐步计算到其他节点的最短距离。DFS是一种图遍历算法,通过沿着某一路径尽可能深地搜索,然后回溯到上一个节点继续搜索未访问的路径,直到所有节点都被访问。BFS是一种层次遍历算法,从起始节点开始,依次访问距离为1、2、3…的所有节点,直至图中所有节点都被访问。判断质数是许多算法和数学问题的基础。线性筛是一种高效生成质数表的方法,避免了冗余标记。最大公约数是两个整数的所有公约数中最大的一个。
2025-01-18 15:12:12
853
原创 数据结构入门模板
栈是一种**后进先出(LIFO,Last In First Out)**的数据结构。插入和删除操作只能在栈顶进行。队列是一种**先进先出(FIFO,First In First Out)**的数据结构,插入操作在队尾,删除操作在队首。最大堆:根节点值大于给定树中所有子节点的值。最小堆:根节点值小于给定树中所有子节点的值。通常使用堆实现一些需要自动索引的场景,如优先队列。并查集是一种用于处理动态连通性**合并:将两个元素所在的集合合并。查找:查询某个元素属于哪个集合。
2025-01-17 14:36:04
1206
原创 常见算法模板汇总
前缀和是一种重要的预处理,能大大降低查询的时间复杂度。它可以简单理解为 “数列的前 n 项的和”。SiA1A2⋯AiSiA1A2⋯Ai,其中S00S[0] = 0S00(为了方便计算)。差分是前缀和的逆运算。对于给定的数列 A,其差分数列 B 定义为:B1A1B1A1BiAi−Ai−1i1BiAi−Ai−1i1。二分查找是一种在有序数组中查找特定元素的搜索算法。
2025-01-17 14:35:00
696
原创 ECMAScript知识归纳
使用class定义类时,可以包含构造函数、实例方法、静态方法和访问器。解构赋值是一种语法,允许将对象或数组中的数据直接提取到变量中。这种方式使代码更加简洁直观,同时不会对被解构的目标对象或数组造成任何影响。Symbol是 ES6 新增的一种原始数据类型,用于创建独一无二的值。它通过Symbol()函数生成,每个Symbol值都是唯一的。设计初衷:为对象添加私有属性,防止属性名冲突或被外部访问。所有功能都集中在一个对象上,代码容易混乱且难以维护。基于传统的事件驱动模式,不支持现代的Promise。
2025-01-11 17:09:24
716
原创 用ES6的类实现面向对象编程
尽管我对UI设计没有太多经验,但通过与ChatGPT的互动,我获得了一个简洁大方的UI设计方案,并通过HTML和CSS实现了它。在这篇文章中,我将分享如何使用ES6的类来实现面向对象的编程,并通过开发一个简单的游戏来实践这些概念。通过这个小项目,我加深了对面向对象编程的理解,并用它们构建一个简单的游戏。接下来,我将详细讲解每个类的设计与实现,并阐明如何利用面向对象的思想来管理游戏的各个方面。游戏类是游戏的主控制类,负责整体的游戏循环、碰撞检测以及游戏的开始、结束和重置。积分榜类用于管理和显示玩家的积分。
2025-01-06 21:47:38
464
原创 最新版vscode中设置C++代码在CMD命令框中运行
最后注意在你要执行的代码中添加system(“pause”);,这代码在CF提交是被允许的,并且不会报答案错误。将会有这两个文件,点开launch.json文件, 更改以下注释了的内容。使用快捷键Ctrl + Shift + B后,选择生成g++ 调试文件。接着打开task.json文件,复制以下代码并做修改。
2024-04-18 18:44:18
952
原创 团体程序设计天梯赛-练习集所有L2题目全集
# 团体程序设计天梯赛-练习集所有L2题目全集文章目录L2-001 紧急救援L2-002 链表去重L2-003 月饼L2-004 这是二叉搜索树吗?L2-005 集合相似度L2-006 树的遍历L2-007 家庭房产L2-008 最长对称子串L2-009 抢红包L2-010 排座位L2-011 玩转二叉树L2-012 关于堆的判断L2-013 红色警报L2-014 列车调度L2-015 互评成绩L2-016 愿天下有情人都是失散多年的兄妹L2-017 人以群分L2-018 多项式A除以BL2-019 悄悄
2024-03-22 11:10:39
1127
3
原创 天梯赛题目
例如样例:8 4 2 5 3 9 1 6 7 --> 拆分为(8 7) (4 2) (5 3 1) (9 6) 进入四个车道即可。枚举一个性别寝室数量另外一个可以通过计算的出,找到两种性别每间寝室入住的人数差最小的即可。考虑到数据范围为1e5 dp复杂度O(n^2)会超时,换种做法:单调栈优化,代码如下。如何正确读取一行中两个值(第二个可能是包含空格的值),如何将字符串转化为值。注意:题目中只说饼的库存量,月饼的总售价为正数。这题其实就是求最长上升子序列的长度,具体见拦截导弹问题的题解。
2024-03-10 21:26:20
967
1
原创 蓝桥云课小白入门赛题解
分类讨论,平方差 = (x - y) * (x + y) 然后又要是连续的正奇数,肯定就是(x + 2 - x) * (x + 2 + x),所以化简就可以得第一个奇数为x = (y - 4) / 4,显然,y一定要大于8才可以。设第三边为x, 另外两边为b, 0 < x < 2 * b,所以这个第三边满足条件的,从小到大枚举找答案就完事了。二分找答案,因为有个根号在,所以在用实数比较时, 要开一个边界值为eps,其它就是带公式了。可以进行n次变相反数的操作,那就全变正数就好了。
2024-02-24 21:02:38
263
原创 常用STL容器归纳
vector v1v1 是一个元素类型为 T 的空 vector使用 v2 中所有元素初始化 v1同上v3 中包含了 n 个值为 val 的元素v3 中包含了 n 个默认值初始化的元素使用 a, b, c… 初始化 v5vector v1同上二维数组初始化map m;set s;queue q;
2024-02-22 16:34:21
1064
1
原创 G.小苯的逆序对
考点:树状数组,容斥,DP题意:给定长为 n 的排列,求有多少个排列值互素的逆序对。知识点:1、树状数组求逆序对;2、求数组中互质的对数第一个比较简单,就不讲了。讲一下第二个的模板怎么写,我们可以定义 表示:“所有的gcd 可以是 i 的倍数的数字们组成的数组”的逆序对数,假设我们已经有了这个 dp 数组,那么我们如何将倍数的值转为其值本身,则只需要从大到小枚举 i,并执行:,执行了这一步后, 就转为了:“所有的 gcd 可以等于 i 的数”组成数组的逆序对个数
2024-02-18 13:38:54
304
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人