- 博客(69)
- 资源 (1)
- 收藏
- 关注
原创 【LeetCode周赛】LeetCode第375场周赛
不难发现,这样会有很多次重复的计算,比如对于上述例子,若选择下标为。是被重复计算过的,所以,对于拓展后的右端点的计算,我们可以将右端点设置为,该区间的。个最大元素的子数组,是可以任意拓展的,因为拓展是不会影响其满足题目要求的。子数组,如果不存在包含了相同数字的两个子数组,则认为是一种好分割方案。根据这一点,我们可以先计算出每一个数字出现的最左端点和最右端点,的最大值,这样时间复杂度过高,那么我们使用快速幂的方法。合并区间后,剩下的若干个区间,相互之间不包含相同的数字。的最大数为一组时,这个子数组为,
2023-12-10 12:42:46
210
1
原创 【LeetCode周赛】LeetCode第374场周赛
进行判断,符合条件的子串需要满足每个字符恰好出现k 次,一共只有26个字符,所以我们可以枚举一共有。首先,根据完美字符串中所述,相邻字符在字母表中的顺序。这是一个很简单的模拟题,直接遍历整个数组,判断。划分为多个组,每个组中是符合这个条件的字符串。的窗口,判断这个窗口种每个字符是否都只出现了。根据这一点要求,就可以将字符串。,这样,这个问题就变成了,有一个大小为。
2023-12-04 10:16:13
204
原创 【LeetCode周赛】LeetCode第373场周赛
即下标为0,5,4的三个数。可以用set来存下来这几个下标,存入后是按照顺序排列的,然后直接放入这几个数字即可。不难发现,其实左移,右移后如果初始矩阵和最终矩阵完全相同,那么左移,右移是等价的,比如对于下标为j的数,右移后相等即。所以本题,我们的目的就是要得到若干个这样的组,对每个组里面按照从小到大的顺序排序,就是最终的结果。我们可以提前维护一个前缀的元音,辅音字母的数量,那么可以在。的时间复杂度下,得到一个区间的元音,辅音数量,再按照题目意思进行判断即可。数组的值,从小到大排序后,原来的下标的序列。
2023-11-27 11:21:40
269
原创 【LeetCode周赛】LeetCode第370场周赛
一场比赛中共有 n 支队伍,按从 0 到 n - 1 编号。给你一个下标从 0 开始、大小为 n * n 的二维布尔矩阵 grid。对于满足 0
2023-11-06 12:29:15
145
原创 【LeetCode周赛】LeetCode第369场周赛
解释:可以执行下述递增运算,使 nums 变为美丽数组: 选择下标 i= 1 ,并且将 nums[1] 的值加 1 -> [2,4,0,0,2]。长度大于或等于 3 的子数组为 [2,4,0], [4,0,0], [0,0,4], [2,4,0,0], [4,0,0,4], [2,4,0,0,4]。长度大于或等于 3 的子数组为 [0,1,5]、[1,5,3]、[0,1,5,3]。nums[1]、nums[2]、nums[3]、nums[4] 和 nums[5] 的第 3位的值为 1。
2023-10-30 11:11:32
230
原创 【LeetCode周赛】LeetCode第368场周赛
因为我们已经确定了能够拆分为k和k+1的组合,p=cnt[x]/k,v=cnt[x]%k,先拆成了p个k,剩下数字v,其实就是v有几个,那么就可以将多少个v个k加一变成k+1。,14=4+4+4+2=5+5+4,15=4+4+4+3=5+5+5,而16=4+4+4+4,不能由5表示了,可以想到,比如说cnt[x]=13,k=4,那么13=4+4+4+1,多出来的这一个1可以丢进前面的某一个4中,同理。比如15=5+5+5,16=5+5+5+1=4+4+4+4,13=5+5+3=5+4+4。
2023-10-23 08:47:03
228
原创 【LeetCode周赛】LeetCode第365场周赛
解释:在这个例子中 infinite_nums =[1,1,1,2,3,1,1,1,2,3,1,1,…解释:下标三元组 (1, 2, 4) 的值是 (nums[1] -nums[2]) * nums[4] = 133。解释:唯一的下标三元组 (0, 1, 2) 的值是一个负数,(nums[0] -nums[1]) * nums[2] = -3。因此,答案是 0。解释:唯一的下标三元组 (0, 1, 2) 的值是一个负数,(nums[0] -nums[1]) * nums[2] = -3。
2023-10-02 16:00:05
322
原创 【LeetCode周赛】LeetCode第364场周赛
根据此题n的数据范围,可以考虑暴力做法,对于一个山状数组,只要我们能够找到"山峰"这个点,山峰i的高度h[i]肯定是当前maxHeights[i]的值,然后往左边逐渐递减,左边每一个塔j的值h[j]=min(maxHeights[j],h[j+1])。同理,右边每一个塔j的值h[j]=min(maxHeights[j],h[j-1])。不难想到,主要的时间开销在枚举每一个塔作为山峰,以及计算每个塔作为山峰时,整体的一个最大高度和,都需要遍历n个塔,如果整体的高度和能够很快计算出来,可以减少时间的开销。
2023-09-26 10:33:20
177
原创 【LeetCode周赛】LeetCode第362场周赛
那么我们可以先存储所有石头多的位置和0石头的位置,对0石头的位置进行全排列,然后依次计算从石头多的位置移动到0石头的位置需要多少步,维护一个最小值即可。解释:从单元格 (3, 1)开始出发,穿过上图标注的单元格,至少需要 4 秒后到达单元格 (7, 3)。解释:从单元格 (2, 4)开始出发,穿过上图标注的单元格,可以在恰好 6 秒后到达单元格 (7, 7)。输入:grid = [[1,1,0],[1,1,1],[1,2,1]]输入:grid = [[1,3,0],[1,0,0],[1,0,3]]
2023-09-11 08:47:13
190
原创 【LeetCode周赛】LeetCode第359场周赛
将位于 [0,0] 范围内的房屋以 1 金币的价格出售给第 1 位买家,并将位于 [1,3] 范围内的房屋以2 金币的价格出售给第 3 位买家。例如,“ab” 可以由 [“apple”, “banana”] 形成,但是无法从 [“bear”, “aardvark”] 形成。输入:words = [“never”,“gonna”,“give”,“up”,“on”,“you”], s = “ngguoy”输入:n = 5, offers = [[0,0,1],[0,2,10],[1,3,2]]
2023-08-30 09:57:26
751
原创 【LeetCode周赛】LeetCode第358场周赛
这道题主要考察的是对链表的操作,既然要对链表翻倍,那么我们一定要考虑到进位如何表示,可以先将链表进行翻转,翻转之后对链表的各个数字进行翻倍的操作会变得简单一些。输入:nums = [51,71,17,24,42] 输出:88 解释: i = 1 和 j = 2 ,nums[i] 和 nums[j]可以知道数据范围并不大,因此我们可以直接暴力枚举整数数组nums中的两个数,判断这两个数数位上最大的数字是否相等。输出:0 解释:我们选择 nums[0] = 4 和 nums[3] = 4。
2023-08-13 17:46:10
273
原创 【赛后总结】第十三届服务外包创新创业大赛总结——A14
比赛已经过去几个月了,也算是想起来这个比赛可以写一个总结了。在历时8个月左右的时间之后,我们队伍最终获得了中南赛区区域赛一等奖,全国总决赛二等奖的成绩。谈及这8个月的经历,从最初的组队,选题,到中期的区域赛答辩,再到最后的决赛答辩,每一步我们都花费了很多的时间。因为有了第十二届参赛的经验,这次我们的目标就是要拿国一,虽然最终以国二收尾,但是其中每个人都付出了很多。无数次的排练和开会,为最后的获奖奠定了基础。
2022-12-02 19:46:52
5859
12
原创 【Git】快速上手Git部署项目
目录1.初勘git1.1版本控制1.2 git简介1.3git基本概念2.git实操2.1.配置2.2初始化仓库2.3在当前目录添加文件1.初勘git学完git也有几个月了,写此文章用来回顾一下以前所学到的知识先感谢y总,git通过AcWing学的Git官网可自行安装1.1版本控制版本控制的英文名称为==(Version Control System)==,主要有以下几个作用:记录文件的所有历史变化错误恢复到某个历史版本多人协作开发编辑同一个文件而本篇文章,我们着重介绍的是,如何快速
2021-11-15 15:30:16
3378
2
原创 【计算机网络】湖南中医药大学——计算机网络实地考察项目
目录1.第一周1.1 记录1.2 了解到的知识点记录1.3 心得体会2.第二周2.1 记录2.2 了解到的知识点记录2021.10.27开会记录2021.10.28开会记录2.3心得体会为期一个月的计算机网络实地考察项目结束了,从一开始的一片空白,到最后成功完成了网络的铺设(虽然效果没有那么好),这期间,我认为有很多值得记录一下的地方。最后一周左右日均睡眠3h,最后两天睡眠2h不到,为了这个项目,我都要豁出老命了据此,写此文章记录本次实地考察项目的整个过程,以及所了解的知识和自己的体会1.第一周
2021-11-14 21:09:02
3758
9
原创 【图论】有向图的强连通分量
目录有向图的强连通分量如何求强连通分量(TarjanTarjanTarjan算法)受欢迎的牛学校网络最大半连通子图有向图的强连通分量连通分量: 对于分量中任意两点u,vu,vu,v,必然可以从uuu走到vvv,且从vvv走到uuu。强连通分量(SCCSCCSCC): 极大连通分量。一个连通分量加上任何一些点都不是连通分量了,该连通分量就是强连通分量。强连通分量的作用: 将任意有向图通过==缩点(将所有连通分量缩成一个点)==转换成向无环图(DAGDAGDAG)。常见应用:对于上图,将有向图缩点之
2021-09-02 16:15:43
2169
原创 【Vue】vue-cli,WebPack,vue-router路由
目录1.vue-cli1.1.什么是vue-cli1.2.第一个vue-cli应用程序2.WebPack2.1.什么是Webpack2.2.模块化的演进2.3.安装Webpack2.4.webpack的使用示例3.vue-router路由3.1.介绍3.2.安装3.3.测试1.vue-cli1.1.什么是vue-clivue-cli官方提供的一个脚手架,用于快速生成一个vue的项目模板; 预先定义好的目录结构及基础代码,就好比在创建Maven项目时可以选择创建一个骨架项目,这个骨架项目就是脚手架,
2021-09-01 00:46:03
242
原创 Deltix Round, Summer 2021 Div. 1 + Div. 2 A B C D
目录A. A Variety of OperationsB. Take Your Places!C. Compressed Bracket SequenceA. A Variety of Operations题目链接题意: 给定两个数a,ba,ba,b,初始值为000,有三个操作,aaa和bbb都加kkk;或者aaa加kkk,bbb减kkk;或者bbb加kkk,aaa减kkk。问最少执行多少次操作,使得a=c,b=da=c,b=da=c,b=d。无法完成则输出−1-1−1。分析: 因为在任意变化之
2021-08-30 11:02:53
486
3
原创 Codeforces Round #741 Div. 2 A B C D1 D2
大胆假设,猜到结论就可以冲了(bushiA. The Miracle and the Sleeper题目链接分析: 在给定的l,rl,rl,r中,选择r≥a≥b≥lr≥a≥b≥lr≥a≥b≥l,的a,ba,ba,b使得amodba mod bamodb最大。可以想到如果有数xxx使得rr%x=1......x-1r,这样的xxx最大是多少?r=2x−1r=2x-1r=2x−1,x=(r+1)/2x=(r+1)/2x=(r+1)/2,如果l≤(r+1)/2l \leq (r+1)/2l≤(r+1)/
2021-08-27 01:15:00
489
原创 Codeforces Round #740 Div. 2 A B C D1 D2
目录A. Simply Strange SortB. Charmed by the GameC. Deep Down BelowD1. Up the Strip (simplified version)A. Simply Strange Sort题目链接题意: 给你一个从1−n1-n1−n的排列数组,nnn的长度是奇数,按照题目给定的要求对序列进行变换,求多少次变换之后能够使得数组递增。分析: 简单的模拟题,主要是要读懂题意,f(i)f(i)f(i)代表如果ai>ai+1a_i > a
2021-08-25 11:53:15
326
原创 【Vue】Vue入门--双向绑定,Vue的组件,Axios异步通信,计算属性,插值,自定义事件
目录1.Vue双向绑定2.Vue的组件3.Axios异步通信3.1.什么是Axios3.2.为什么要使用Axios3.3.第一个Axios应用程序4.Vue的生命周期5.计算属性6.插槽7.自定义事件8.Vue入门小结1.Vue双向绑定Vue.js是一个MVVM框架,即数据双向绑定,即当数据发生变化的时候,视图也就发生变化,当视图发生变化的时候,数据也会同步变化。这就是Vue.js的精髓之处了。可以使用v-model指令在表单<input>,<textarea>以及<se
2021-08-22 23:46:04
867
2
原创 【图论】二分图的应用(染色法判断二分图,最大匹配,最小点覆盖,最大独立集,最小路径点覆盖,最小路径重复点覆盖)
目录概念什么是二分图?二分图的判定匹配问题名词概念匈牙利算法染色法判断二分图-关押罪犯最大匹配-棋盘覆盖最小点覆盖-机器任务最大独立集-骑士放置最小路径重复点覆盖-捉迷藏概念什么是二分图?顾名思义就是能分成两个部分的图二分图是一个图,它的顶点可以分为两个独立的集合UUU和VVV,这样每一条边(u,v)(一个点在UUU,一个点在VVV)要么从uuu到vvv连接一个顶点,要么从vvv到uuu连接一个顶点。换句话说,对于每一条边(u,v),要么uuu属于UUU,要么vvv属于VVV,或者uuu属于VVV,
2021-08-21 16:29:14
894
原创 【SpringMVC】RestFul风格&数据处理及跳转
RestFul风格概念Restful就是一个资源定位及资源操作的风格。不是标准也不是协议,只是一种风格。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。功能资源:互联网所有的事物都可以被抽象为资源资源操作:使用POST、DELETE、PUT、GET,使用不同方法对资源进行操作。分别对应 添加、 删除、修改、查询。传统方式操作资源 :通过不同的参数来实现不同的效果,方法单一,post 和 gethttp://127.0.0.1/item/queryItem.action?i
2021-08-20 23:12:54
776
原创 【SpringMVC】拦截器的简单使用
目录1、概述2、自定义拦截器3、验证用户是否登陆Demo1、概述SpringMVC的处理器拦截器类似于Servlet开发中的过滤器Filter,用于对处理器进行预处理和后处理。开发者可以自己定义一些拦截器来实现特定的功能。过滤器与拦截器的区别: 拦截器是AOP思想的具体应用。过滤器servlet规范中的一部分,任何java web工程都可以使用在url-pattern中配置了/*之后,可以对所有要访问的资源进行拦截拦截器拦截器是SpringMVC框架自己的,只有使用了SpringMVC
2021-08-19 16:57:48
405
原创 【Vue】第一个Vue程序&Vue的基础语法指令
目录1.什么是MVVM?2.为什么要使用MVVM3.Vue4.第一个Vue程序1.什么是MVVM?**MVVM(Model-View-ViewModel)**是一种软件设计模式,由微软WPF(用于替代WinForm,以前就是用这个技术开发桌面应用程的)和Silverlight(类似于Java Applet,简单点说就是在浏览器上运行WPF)的架构师Ken Cooper和Ted Peters开发,是一种简化用户界面的事件驱动编程方式。由John Gossman(同样也是WPF和Sliverlight的架构
2021-08-18 17:22:13
203
原创 【SSM框架】整合Spring,SpringMVC,Mybatis
整合SSM框架1、新建Maven项目,添加web支持2、导入相关的jar包,配置pom.xml3、建立基本结构和配置框架4、Mybatis层的编写5、Spring层的编写6、SpringMVC层的编写在这里,我们使用了一个书本的数据库作为例子来进行框架的整合CREATE DATABASE `ssmbuild`;USE `ssmbuild`;DROP TABLE IF EXISTS `books`;CREATE TABLE `books` ( `bookID` INT(10) NOT NU
2021-08-17 12:14:48
177
原创 【SSM框架】整合Spring,Mybatis
目录1.导入相关jar包2.对Mybatis进行编写(原始方法)3.在刚刚写好的基础上修改,整合Mybatis和Spring1.导入相关jar包junit,mybatis,mysql-connector-java,spring相关,aspectJ AOP 织入器(事务处理时会用),mybatis-spring整合包<dependencies> <dependency> <groupId>junit</groupId>
2021-08-16 00:06:04
192
原创 【动态规划】 最长上升子序列模型——进阶
最长上升子序列模型拦截导弹导弹防御系统拦截导弹某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。输入导弹依次飞来的高度(雷达给出的高度数据是不大于30000的正整数,导弹数不超过1000),计算这套系统最多能拦截多少导弹,如果要拦截所有导弹最少要配备多少套这种导弹拦截系统。输入格
2021-08-14 15:24:30
418
原创 【SpringMVC】SpringMVC简介&第一个SpringMVC项目
1、回顾MVC学习和参考:b站狂神1.1、什么是MVCMVC是**模型(Model)、视图(View)、控制器(Controller)**的简写,是一种软件设计规范。是将业务逻辑、数据、显示分离的方法来组织代码。MVC主要作用是降低了视图与业务逻辑间的双向偶合。MVC不是一种设计模式,MVC是一种架构模式。当然不同的MVC存在差异。Model(模型):数据模型,提供要展示的数据,因此包含数据和行为,可以认为是领域模型或JavaBean组件(包含数据和行为),不过现在一般都
2021-08-08 23:36:04
592
原创 【Mybatis】关于复杂的SQL查询的处理&Mybatis的缓存机制
10、多对一处理多对一:多个学生,对应一个老师对于学生这边而言, 关联 … 多个学生,关联一个老师 【多对一】对于老师而言, 集合 , 一个老师,有很多学生 【一对多】[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Biz99ZqI-1628006684632)(Mybatis课堂笔记.assets/1569909422471.png)]SQL:CREATE TABLE `teacher` ( `id` INT(10) NOT NULL, `n
2021-08-04 00:16:13
370
原创 【Mybatis】配置解析以及日志的处理,分页的使用,使用注解开发,Lombok入门
目录1、配置解析1.1、核心配置文件1.2、环境配置(environments)1.3、属性(properties)1.4、类型别名(typeAliases)1.5、设置1.6、其他配置1.7、映射器(mappers)1.8、生命周期和作用域2、解决属性名和字段名不一致的问题2.1、 问题2.2、resultMap3、日志3.1、日志工厂3.2、Log4j4、分页4.1、使用Limit分页4.2、RowBounds分页4.3、分页插件5、使用注解开发5.1、面向接口编程5.2、使用注解开发5.3、CRUD6
2021-07-28 00:30:21
294
原创 【Mybatis】Mybatis简介以及CRUD的使用
目录1、简介1.1、什么是Mybatis1.2、持久化1.3、持久层1.4 为什么需要Mybatis?2、第一个Mybatis程序2.1、搭建环境2.2、创建一个子模块2.3、编写代码2.4、测试1、简介学习SSM框架时,因为有配置文件,所以学习最好的方式:看官网文档。1.1、什么是MybatisMyBatis 是一款优秀的持久层框架它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XM
2021-07-19 01:14:23
210
1
原创 【Spring】代理模式,AOP,声明式事务
代理模式1.静态代理2.静态代理加深理解3.动态代理4.动态代理加深理解为什么要学习代理模式?因为这就是SpringAOP的底层!【SpringAOP和SpringMVC很重要】代理模式的分类:静态代理动态代理1.静态代理角色分析:抽象角色:一般会使用接口或抽象类来解决真实角色:被代理的角色代理角色:代理真实角色,代理真实角色后,我们一般会做一些附属操作客户:访问代理对象的人!代码步骤:接口package com.adie.pojo.demo01;//租房publ
2021-07-18 01:07:16
240
1
原创 【Spring】bean的自动装配,使用注解开发,使用Java的方式配置Spring
目录1.bean的自动装配1.1测试环境1.2byName自动装配1.3byType自动装配1.4使用注解实现自动装配@Autowired@Qualifier@Resource小结2.使用注解开发2.1bean2.2属性如何注入2.3衍生的注解2.4自动装配2.5作用域2.6小结2.7补充(关于注解驱动和指定扫描包)3.使用Java的方式配置Spring1.bean的自动装配自动装配是Spring满足bean依赖一种方式Spring会在上下文中自动寻找,并自动给bean装配属性在Spring中有
2021-07-15 19:37:33
950
1
原创 道路与航线(toposort+dijkstra)
题目描述农夫约翰正在一个新的销售区域对他的牛奶销售方案进行调查。他想把牛奶送到 T 个城镇,编号为 1∼T。这些城镇之间通过 R 条道路 (编号为 1 到 R) 和 P 条航线 (编号为 1 到 P) 连接。每条道路 i 或者航线 i 连接城镇 Ai 到 Bi,花费为 Ci。对于道路,0≤Ci≤10,000;然而航线的花费很神奇,花费 Ci 可能是负数(−10,000≤Ci≤10,000)。道路是双向的,可以从 Ai 到 Bi,也可以从 Bi 到 Ai,花费都是 Ci。然而航线与之不同,只可以
2021-07-14 11:52:11
315
原创 【Spring】HelloSpring,IOC创建对象的方式,Spring配置,依赖注入
目录1.HelloSpring1.1使用过程1.2修改案例一2.IOC创建对象的方式2.1使用无参构造创建对象,默认2.2通过有参构造创建对象2.3拓展案例3.Spring配置3.1别名3.2Bean的配置3.3import4.依赖注入4.1构造器注入4.2Set方式注入【重点】4.3拓展方式注入4.4bean的作用域1.HelloSpring1.1使用过程1.导入jar包<dependency> <groupId>org.springframework</gr
2021-07-13 16:57:24
116
原创 【Spring】初识Spring--Spring介绍
Spring入门之初识Spring1.概述1.1优点1.2组成2.IOC基础2.1 IOC理论推导2.2IOC本质1.概述Spring轻量级的开源的JavaEE框架2002年,Spring框架的雏形:Interface21Spring框架即以Interface21框架为基础,经过重新设计,并不断丰富其内涵,于2004年3月24日,发布了 1.0正式版**Rod Johnson(Spring之父)**的学历 , 他是悉尼大学的博士,然而他的专业不是计算机,而是音乐学。Spring理念 : 使现有
2021-07-12 15:25:17
708
原创 【安卓课设】简单分析本次课设
目录1.课设简介2.课设所用到的开源控件的汇总2.1所用到的依赖包2.2各个开源控件Github地址终于考完试了,能凑出点时间来写写博客了(虽然还处于微机成绩的忐忑之中)。微机我真的无话可说 前面都是废话,进入正文1.课设简介 我做的安卓课设是一个论坛系统,搭建了一个后台服务器,所以实现了所有用户的信息实时更新和获取的功能。论坛功能有发布,回复,点赞,收藏。自己发布的内容查看,回复自己的帖子的信息,对个人信息的修改。上述
2021-07-03 14:21:44
1059
JAVA推箱子(实现了多关卡,地图编辑器,排行榜连接数据库,背景音乐)
2021-01-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人