- 博客(62)
- 收藏
- 关注
原创 icpchk2024 补题
其实我们如果存在大于三个一样的这样的对{1, 2, 3} {1, 2, 3}, {1, 2, 3}我们都可以转换成{x, x, x},等价的,所以大于等于3的部分直接模去,无意义,所以我们可以暴搜每种{x, x + 1, x + 2}的0个、1个、2个,也就是%3的情况,统计它们的cnt,一共729种。给定你一个长度为n的序列,序列的数值只有1-8,问有多少个子数组的数字可以被划分成形如{x, x, x}, {x, x + 1, x + 2},x是正整数,求个数。对于{x, x, x}我们暂时忽略,
2025-10-22 14:44:39
256
3
原创 暑期前端训练day7——有关vue-diff算法的思考
本文深入探讨了Vue的diff算法实现原理及其性能优化策略。diff发生在组件更新时,通过深度优先搜索比较新旧虚拟DOM树,采用双指针策略和最长上升子序列算法(LIS)高效复用DOM节点。核心优化包括:1)优先复用相同key和类型的节点;2)使用insertBefore高效移动DOM而非重建;3)延迟删除多余节点以最大化复用。这些策略将时间复杂度控制在O(n+nlogn),通过减少DOM操作次数显著提升了性能。文章还解答了为何不直接重建DOM、为何最后删除节点等设计决策的深层原因,体现了Vue在性能与正确性
2025-07-21 01:30:06
500
原创 机器学习/深度学习训练day1
今天开始需要一点点的积累深度学习的知识了,会在这个专栏里面记录我学的东西的从0到1。看的是李宏毅老师的机器学习课程。很久没看数学的新东西了,死去的回忆。
2025-07-14 22:31:55
550
原创 暑期前端训练day6
好多天没有更新了,一直在熟悉项目和做需求,下班以后也是累了,直接开摆。今天来更一下,水几个力扣每日一题,用ts写的,以后每天都打卡一道困难,除了周末。
2025-07-12 19:28:55
478
原创 暑期前端训练day5
本文总结了TypeScript的核心数据类型与特性,包括基本类型(any、unknown、never等)、对象/数组/元组声明方式、枚举类型、type与interface的区别、泛型的使用场景(函数/接口/类)以及类型声明文件的作用。特别对比了any与unknown的安全性差异,介绍了类型收缩的两种方式,并展示了通过索引签名扩展对象属性的技巧。最后分享了一个编程技巧:使用#region/#endregion实现代码块强制折叠。内容涵盖TypeScript类型系统的关键知识点,适合开发者复习或快速查阅。
2025-07-07 01:53:09
284
1
原创 暑期前端训练day4
本文主要分享了作者在JavaScript数组方法及多维数组定义方面的复盘总结。文章首先对比了C++和JS在实际应用中的选择,并表达了转向TypeScript的学习计划。核心内容详细介绍了JS数组的构造方法(new Array()与Array.of())、常用操作(如length属性、shift/unshift、splice等17个关键API),并重点讲解了三种多维数组定义方式。作者还原创了一个根据维度参数生成任意高维数组的函数createArray,强调这些基础API应该熟练掌握。全文体现了作者对JavaS
2025-07-06 16:48:52
722
原创 暑期前端训练day3
本文总结了JavaScript/TypeScript中常用的数组高阶函数,重点讲解了reduce和sort两个方法。reduce作为一个累加器,接收回调函数和初始值,通过案例演示了其参数(pre,cur,index,arr)的用法。sort方法的回调函数与C++不同,通过返回负数/正数控制排序顺序。文章还指出高阶函数的三个注意事项:均为数组方法、性能略低于传统for循环、需注意this绑定。其他高阶函数(map、filter等)用法类似,可举一反三。
2025-07-03 21:38:22
325
原创 暑期前端训练day2
本文分享了用JavaScript解决Codeforces题目时采用的输入处理方法和链表优化思路。首先介绍了适用于ACM题型的Node.js输入模板,通过监听标准输入按行收集数据。针对题目涉及的三种序列操作(末尾添加、循环右移、反转),作者提出使用双向链表结构,通过交换左右指针数组实现O(1)时间复杂度的反转操作,并用头尾指针跟踪序列状态。文章重点展示了如何利用JavaScript的解构赋值优雅地交换变量,以及通过维护三个数组(le、ri、va)来高效处理大规模数据(2×10^5级别操作)。代码片段展示了具体
2025-06-27 01:36:07
328
原创 暑期前端训练day1
本文介绍了两种JavaScript记忆函数的实现方法。第一种适用于限定输入的函数,通过Map嵌套缓存结果;第二种是通用版本,考虑了参数长度差异和返回值为undefined的情况。两个实现都通过维护缓存映射来避免重复计算,当相同参数出现时直接返回缓存结果。代码展示了如何通过递归Map结构存储不同参数组合的计算结果,显著提升重复调用的性能。第二版特别添加了状态Map来区分未缓存和返回值为undefined的情况,确保缓存机制的正确性。
2025-06-19 23:15:23
329
原创 好题总结汇总
(1)先对aaa数组进行排序。(2)假如我们已经选到了nnn个球的数量a1a2ana1≤a2≤≤ana1a2ana1≤a2≤≤an按照k个不同小球组合在一起或者是1个个组合的最小组合数是多少?resultmaxanceil∑aikresultmaxanceil∑aik(3)当我们有个这个结论,我们就可以直接进行背包dpdpdp。
2024-05-10 15:19:14
1132
原创 寒假思维训练day17 C. Equal Frequencies
不知不觉已经过了差不多一个月了,坚持一件事情还是有点收获的,今天更新一道1600的构造。
2024-01-31 16:38:15
1345
原创 寒假思维训练计划day16 A. Did We Get Everything Covered?
今天更新一道1月27号晚上div2的C题作为素材,感觉用到了我的构造题总结模型,我总结了一系列的模型和例题。
2024-01-28 15:56:37
1635
1
原创 寒假思维训练day13 D. Umka and a Long Flight
今天更新一道1700的构造题,附上详细的数学证明和python、C++代码。
2024-01-25 12:33:51
1327
原创 博客模板(方便以后自己使用)
part1:最近需要推广的内容part2: 链接,主要内容。part3:题解part4代码(cpp版本,后续可能会更新python版本)
2024-01-22 12:30:50
449
原创 寒假思维训练day12 E. Increasing Subsequences
1、适合喜欢算法、对算法感兴趣的朋友。2、寒假思维训练day12 3、关于构造题的方法论 4、CF edu E. Increasing Subsequences
2024-01-22 12:16:05
1404
1
原创 寒假思维训练计划day11
1、前后缀贪心,比如说观察前后缀的sum,去看以后怎么考虑最好。2、双指针贪心法,考虑两端相消或者相互作用,还有就是考虑左右边界。3、转换观察法,有些关系可以抽象成图,观察图的某些性质去总结规律。也可以抽象成一个集合,两个集合相等可以说明有解可构造。4、打表找规律,一般没什么规律可循即可打表找规律,一般和数论有关的很喜欢考,acm也喜欢考,属于人类智慧题。5、公式推导演算,常见的分为公式的等价变形、公式的化简(这个常考,一般需要先证明某些性质,可以直接抵消,一般如果原公式处理起来很复杂时就可以考虑)。
2024-01-19 18:59:49
1094
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅