自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Codeforces Round 1039 (Div. 2)

贪心的考虑,对于必须要花费1个硬币的,我们就让它最后再销毁,计算每个垃圾袋可以承受的次数,优先考虑用承受次数少的。思路就是先算出所有递减子序列的长度总和,然后再减去所有存在递增情况的贡献。尽可能的小,这样才容易找到,所以记录一个最小值以及它的下标。我们可以证明,在给定的约束条件下,这总是可能的。当且仅当一个数组不是坏数组时,它才是好数组。你可以进行任意次数的运算。选择在每一轮移除哪个元素,这样得到的数组。,且以下条件之一成立时,我们说大小为。,那么只要找到区间长度合法,且。你可以进行以下形式的运算。

2025-07-28 13:30:59 1263

原创 AtCoder Beginner Contest 416

之后呢,要想使这个和最小,那么贪心的考虑就是尽可能地让两数之和相加大于模数的情况尽可能的多出现。抵消除法带来的影响。,但是这里除法可能会产生精度丢失,所以我是对所有权值。要求两点之间最短路,显然可以用floyd求。,不好处理如何转移,所以我们添加一个虚点。,所以我们要对每个数先进行取模。暴力把所有可能拼接的字符串放进。对于操作二:添加一个飞机场。对于操作三:我们直接暴力。

2025-07-27 19:17:49 809

原创 Web APIs 知识复习6

/ const strEnd = str.replace(/前端/, 'web') 只能替换一个。// const strEnd = str.replace(/前端/, 'web') 只能替换一个。表示字符的范围,定义的规则限定在某个范围,比如只能是英文字母,或者数字等等,用表示范围。// 用户名可以输入英文字母,数字,可以加下划线,要求 6~16位。'欢迎大家学习前端,相信大家一定能学好前端,都成为前端大神'// 1. [abc] 匹配包含的单个字符, 多选1。

2025-07-24 18:13:11 1038

原创 Educational Codeforces Round 181 (Rated for Div. 2)

表示所有线段都不发生的概率,这样可以快速求出其他线段都不发生的概率。让字母T在最前面就行,排序一下然后翻转字符串。的线段时乘上了其他线段都不发生的概率),然后。再乘上它发生的概率(表示它发生了),再加上。要去掉所有含个位数质数因子,其实就只有。,观察样例3也能发现,重复次数就是。要除以它不发生的概率(因为前面求。其他线段都不发生的概率),我用。需要加上(当前线段发生的概率。显然答案只有1或者2。对于1,那就是重复某对。有范围限制,显然是让。,所以简单容斥一下。

2025-07-23 20:36:11 1035

原创 Web APIs 知识复习5

本文摘要:本文主要介绍了Web API中BOM操作的核心知识点,包括window对象、定时器函数、location/navigator/history对象以及本地存储技术。重点讲解了localStorage的使用方法,包含数据存储、获取和删除操作,并介绍了如何通过JSON.stringify()实现复杂数据类型的本地存储。同时对比了sessionStorage的特性差异,帮助开发者掌握浏览器数据持久化的实现方式。

2025-07-23 17:32:41 818

原创 Web APIs 知识复习4

在已有的 DOM 节点中插入新的 DOM 节点时,需要关注两个关键因素:首先要得到新的 DOM 节点,其次在哪个位置插入这个节点。回顾之前 DOM 的操作都是针对元素节点的属性或文本的,除此之外也有专门针对元素节点本身的操作,如插入、复制、删除、替换等。DOM 树中的任意节点都不是孤立存在的,它们要么是父子关系,要么是兄弟关系,不仅如此,我们可以依据节点之间的关系查找节点。// 爷爷节点 tr。删除现有的 DOM 节点,也需要关注两个因素:首先由父节点删除子节点,其次是要删除哪个子节点。

2025-07-22 12:00:07 1042

原创 Web APIs 知识复习3

进一步学习 事件进阶,实现更多交互的网页特效,结合事件流的特征优化事件执行的效率。

2025-07-21 18:03:58 1045

原创 力扣(LeetCode)第 161 场双周赛

而很小的数,我们可以提前暴力预处理出它们的位计数深度。最小值最大很容易就想到二分,我们二分最小的最大边权为x,每条边花费都大于等于x的情况下在有向无环图(DAG)上dp一下,蓝色高亮显示的岛屿的总价值可以被 5 整除,而红色高亮显示的岛屿则不能。是一个大于 1 的自然数,它只有两个因子,1和它本身。网格中包含六个岛屿,每个岛屿的总价值都可以被 3 整除。节点 3 离线,因此任何通过 3 的路径都是无效的。一个岛屿的总价值是该岛屿中所有单元格的值之和。,那么有i个1的数的位计数深度就是k了。

2025-07-21 12:10:49 934

原创 Web APIs 知识复习2

本文介绍了Web API中事件处理的相关知识,主要包括:1. 事件监听通过addEventListener方法实现,包含获取DOM元素、添加事件监听、触发回调函数三个步骤;2. 常见事件类型如鼠标事件(click、mouseenter等)、键盘事件、焦点事件等;3. 事件对象包含事件相关信息如类型、光标位置等;4. 环境对象this的指向规则;5. 回调函数的概念及应用场景。通过学习可以掌握通过DOM事件实现网页交互的基本方法。

2025-07-20 17:42:57 1005

原创 力扣(LeetCode)第 459 场周赛

但是这样会导致平行四边形重复计算,我们需要删掉这些重复计算的,考虑到平行四边形的性质有一个是对角线的交点相同,即中位数相同,我们用map记录所有中位数,但由于我们不能选择两条重合的边,所以还要再套一个map对斜率进行分组。因为题目n范围<=500,我们n^2求出所有直线,用map记录所有斜率相同的,因为我们不能选择两条重合的直线,所以需要再套一个map记录所有截距。注意k的范围很小,我们可以开6(k<=5)个树状数组维护每个深度,单点修改,区间修改。,那么另外一条水平边就是之前遍历过的y的水平边数。

2025-07-20 16:13:57 860

原创 AtCoder Beginner Contest 415

贪心地考虑,要想尽可能多的获得纪念卡也就是尽可能多的操作,按照a-b的差值从小到大排序,这样在满足可操作的时候能够保证尽可能多的弥补损失的。题面有点绕,简答来说就是确定一种放数位的顺序,每次放入后产生的状态是要安全的,而不能是危险的,最后看是否能放入所有的数位。经典状压dp,dp数组表示状态i是否可达,看代码就能懂。排完序后就依次看是否能操作,以及能操作多少次。理解样例一中的测试点1就能明白题意。数量一定为偶数,模拟输出即可。遍历一下数组看X是否存在。

2025-07-20 00:57:53 418

原创 Codeforces Round 1037 (Div. 3)

dfs用map维护每个节点的儿子所有不同颜色的花费总和,修改某个点颜色的时候单独对其父亲讨论一下,改其map,然后儿子就直接用map进行加减。记录当前高度为dep,我们一定是不断往高处走,所以对塔楼从小到大排序,从题目指定的塔楼开始往上爬。贪心地,遇到0就开始记录,到k个或者越界或者遇到1就退出循环,模拟过去就行。,至于为什么是最小公倍数,说实话是凭直觉猜的,在满足都是。记录当前所在塔楼高度为now,如果下一个要攀登的塔楼。的时间,那么就可以继续爬,否则就结束。,那么只能是不断变大的,假设存在。

2025-07-19 13:40:17 1079

原创 Web APIs 知识复习1

知道 ECMAScript 与 JavaScript 的关系,Web APIs 是浏览器扩展的功能。严格意义上讲,在 JavaScript 阶段学习的知识绝大部分属于 ECMAScript 的知识体系,ECMAScript 简称 ES 它提供了一套语言标准规范,如变量、数据类型、表达式、语句、函数等语法规则都是由 ECMAScript 规定的。浏览器将 ECMAScript 大部分的规范加以实现,并且在此基础上又扩展一些实用的功能,这些被扩展出来的内容我们称为 Web APIs。

2025-07-17 18:06:45 871

原创 JavaScript进阶知识复习4

首先浅拷贝和深拷贝只针对引用类型浅拷贝:拷贝的是地址常见方法:首先浅拷贝和深拷贝只针对引用类型深拷贝:拷贝的是对象,不是地址常见方法:函数递归:如果一个函数在内部可以调用其本身,那么这个函数就是递归函数js库lodash里面cloneDeep内部实现了深拷贝JSON序列化异常处理throw异常处理是指预估代码执行过程中可能发生的错误,然后最大程度的避免错误的发生导致整个程序无法继续运行总结:总结:总结:相当于断点调试 是 JavaScript 最具“魅惑”的知识点,不同的应用场合 的取

2025-07-16 16:36:53 1067

原创 JavaScript进阶知识复习3

了解构造函数原型对象的语法特征,掌握 JavaScript 中面向对象编程的实现方式,基于面向对象编程思想实现 DOM 操作的封装。

2025-07-15 17:38:34 793

原创 2025年睿抗机器人开发者CAIP-编程技能赛-本科组省赛题解

已全部补完。

2025-07-15 10:51:57 1319 2

原创 JavaScript进阶知识复习2

的数据类型有 6 种,分别是字符串、数值、布尔、undefined、null 和 对象,常见的对象类型数据包括数组和普通对象。之所以具有对象特征的原因是字符串、数值、布尔类型数据是 JavaScript 底层使用 Object 构造函数“包装”来的,被称为包装类型。了解面向对象编程的基础概念及构造函数的作用,体会 JavaScript 一切皆对象的语言特征,掌握常见的对象属性和方法的使用。甚至字符串、数值、布尔、数组、普通对象也都有专门的构造函数,用于创建对应类型的数据。

2025-07-14 14:30:25 922

原创 JavaScript进阶知识复习1

学习作用域、变量提升、闭包等语言特征,加深对 JavaScript 的理解,掌握变量赋值、函数声明的简洁语法,降低代码的冗余度。作用域(scope)规定了变量能够被访问的“范围”,离开了这个“范围”变量便不能被访问,作用域分为全局作用域和局部作用域。JavaScript 中的作用域是程序被执行时的底层机制,了解这一机制有助于规范代码书写习惯,避免因作用域导致的语法错误。知道函数参数默认值、动态参数、剩余参数的使用细节,提升函数应用的灵活度,知道箭头函数的语法及与普通函数的差异。

2025-07-13 19:14:34 888

原创 JavaScript基础知识复习5

对象数据类型可以被理解成是一种数据集合。是 JavaScript 中内置的对象,称为数学对象,这个对象下即包含了属性,也包含了许多的方法。数学对象提供了比较多的方法,不要求强记,通过演示数学对象的使用,加深对对象的理解。数据描述性的信息称为属性,如人的姓名、身高、年龄、性别等,一般是名词性的。数据行为性的信息称为方法,如跑步、唱歌等,一般是动词性的,其本质是函数。// 属性都是成对出现的,属性名 和 值,它们之间使用英文 : 分隔。// 属性都是成对出现的,属性名 和 值,它们之间使用英文 : 分隔。

2025-07-13 16:16:02 953

原创 JavaScript基础知识复习4

声明(定义)一个完整函数包括关键字、函数名、形式参数、函数体、返回值5个部分。

2025-07-12 20:10:23 699

原创 JavaScript基础知识复习3

script > // 1. 语法,使用 [] 来定义一个空数组 // 定义一个空数组,然后赋值给变量 classes // let classes = [];// 2. 定义非空数组 let classes = [ '小明' , '小刚' , '小红' , '小丽' , '小米' ] </ script >// 1. 语法,使用 [] 来定义一个空数组。

2025-07-11 19:52:17 1002

原创 JavaScript 基础知识复习2

小括号内的条件结果是布尔值,为 true 时,进入大括号里执行代码;数字是用来计算的,比如:乘法 * 、除法 / 、加法 + 、减法 - 等等,所以经常和算术运算符一起。: 一些简单的双分支,可以使用 三元运算符(三元表达式),写起来比 if else双分支 更简单。使用场景: 适合于有多个条件的时候,也属于分支语句,大部分情况下和 if多分支语句 功能相同。中止整个循环,一般用于结果已经得到, 后续的循环不需要的时候可以使用(提高效率)如果大括号只有一个语句,大括号可以省略,但是,不提倡这么做~

2025-07-10 20:45:10 787

原创 2024年睿抗机器人开发者CAIP-编程技能赛-本科组省赛题解

已全部拿下,后天考试,做一套找找感觉,ioi赛制就是爽。

2025-07-10 11:11:15 538

原创 JavaScript基础知识复习1

掌握 JavaScript 的引入方式,初步认识 JavaScript 的作用。

2025-07-09 21:07:50 894

原创 CSS知识复习5

给元素设置: display:flex 或 display:inline-flex ,该元素就变为了伸缩容器。主轴: 伸缩项目沿着主轴排列,主轴默认是水平的,默认方向是:从左到右(左边是起点,右边是终点)。侧轴: 与主轴垂直的就是侧轴,侧轴默认是垂直的,默认方向是:从上到下(上边是起点,下边是终点)。display:inline-flex 很少使用,因为可以给多个伸缩容器的父容器,也设置为伸缩。仅伸缩容器的子元素成为了伸缩项目,孙子元素、重孙子元素等后代,不是伸缩项目。数值越小,排列越靠前,默认为 0。

2025-07-08 18:06:44 1263

原创 CSS知识复习4

注意: rotateZ(20deg) 相当于 rotate(20deg) ,当然到了 3D 变换的时候,还能写:rotate(x,x,x)过渡可以在不使用 Flash 动画,不使用 JavaScript 的情况下,让元素从一种样式,平滑过渡为另一种样式。transform-origin: 50% 50% , 变换原点在元素的中心位置,百分比是相对于自身。元素变换时,默认的原点是元素的中心,使用 transform-origin 可以设置变换的原点。与相对定位的区别:相对定位的百分比值,参考的是其父元素;

2025-07-07 20:47:22 1112

原创 CSS知识复习3

CSS3 是 CSS2 的升级版本,它在 CSS2 的基础上,新增了很多强大的新功能,从而解决一些实际面临的问题。CSS3 的新特性如下:新增了更加实用的选择器,例如:动态伪类选择器、目标伪类选择器、伪元素选择器等等。新增了更好的视觉效果,例如:圆角、阴影、渐变等。新增了丰富的背景效果,例如:支持多个背景图片,同时新增了若干个背景相关的属性。新增了全新的布局方案 —— 弹性盒子。新增了 Web 字体,可以显示用户电脑上没有安装的字体。

2025-07-06 22:52:46 933

原创 HTML知识复习2

HTML5 是新一代的 HTML 标准,2014年10月由万维网联盟( W3C )完成标准制定。官网W3CHTML5 在狭义上是指新一代的 HTML 标准,在广义上是指:整个前端。

2025-07-05 22:43:52 959

原创 CSS知识复习2

内容区的宽度 = 父的 content — 自身的左右 margin — 自身的左右 border — 自身的左右padding。如果 z-index 值大的元素,依然没有覆盖掉 z-index 值小的元素,那么请检查其包含块的层级。第一个子元素的上 margin 会作用在父元素上,最后一个子元素的下 margin 会作用在父元素上。方案五: 给浮动元素的父元素,设置伪元素,通过伪元素清除浮动,原理与方案四相同。对兄弟元素的影响: 后面的兄弟元素,会占据浮动元素之前的位置,在浮动元素的下面;

2025-07-04 22:44:59 1043

原创 第十六届蓝桥杯C++B组国赛题解+复盘总结

打了三年,第十六届是我最后一次参加了,终于如愿以偿国一啦。这场的大多题目都补了,有始有终。从第十四届的省二,到第十六届的国一,很符合一个普通人的发展路线了。

2025-07-03 19:52:49 1599

原创 CSS知识复习1

复合选择器建立在基本选择器之上,由多个基础选择器,通过不同的方式组合而成。复合选择器可以在复杂结构中,快速而准确的选中元素。

2025-07-02 22:08:27 1035

原创 HTML知识复习1

记录一下自己容易忘记的知识点。

2025-07-01 21:27:39 1169

原创 第十六届蓝桥杯C++B组国一

得偿所愿。

2025-06-23 11:48:11 230

原创 第十三届蓝桥杯C++B组省赛题解+复盘总结

国赛前的最后模拟,做的还行,没有特别难的题目,比较满意的是这次自己做的都对了,没有出现不必要的失误,10砍竹子补完感觉也挺可惜的。

2025-06-12 15:33:14 1342

原创 第十二届蓝桥杯C++B组国赛题解+复盘总结

数据太水了,打的一般。

2025-06-10 17:06:59 1005

原创 第十三届蓝桥杯C++B组国赛题解+复盘总结

呃感觉做的还是不够好,后期乏力简单的01背包都写不明白了,惭愧惭愧。

2025-06-08 21:24:41 936

原创 第十四届蓝桥杯C++B组国赛题解+复盘总结

成绩很差,3个小时下班做的很心急,没有仔细思考小小反思:1、暴力枚举的时候可以多想想尽可能多得过水数据的写法2、不能心急,仔细审题,4小时坚持打满3、板子多练习。

2025-06-07 18:12:21 1454

原创 第十四届蓝桥杯C++B组省赛题解+复盘总结

一周多没写题了,赶在最后十天复健一下找找状态今天做了前年省赛题目,已全部补完。

2025-06-04 20:08:31 827

原创 yarn create vite出现[##] 2/2‘C:\Program‘ 不是内部或外部命令,也不是可运行的程序或批处理文件

在搭建vue项目时,使用yarn create vite命令,结果控制台报错’C:\Program’ 不是内部或外部命令,也不是可运行的程序。原因是yarn命令可执行命令文件夹存在空格,即"C:\Program Files"输入以下命令查看将全局包的可执行文件链接到的目录路径。输入以下命令查看全局安装包的目录路径。可以发现路径中有空格。

2025-06-04 16:49:03 325

原创 BDD100K转COCO格式详细教程

我们要把文件名改为解压后文件夹里显示的json文件名称,例如我这里是det_train/det_val。这是很久之前的了,存在一些问题。最后运行代码就成功啦。

2025-05-24 12:29:23 420

空空如也

空空如也

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

TA关注的人

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