首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
课程
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
lovejsn
获赞
0
粉丝
0
关注
0
看过 TA
3
武汉大学
2026
算法工程师
IP属地:湖北
为爱前行
私信
关注
拉黑
举报
举报
确定要拉黑lovejsn吗?
发布(4)
刷题
lovejsn
01-19 22:25
武汉大学 计算机类
题解 | #剪纸游戏#
链接https://ac.nowcoder.com/acm/contest/73450/D 题目如上。 此题考查一个图的深度或者广度优先遍历。 此题的难点在于判断是否是一个长方形,我是在广度优先的时候记录了所走过的方块数量cnt,和所有点的最大最小横纵坐标,即maxi,maxj,mini,minj,按照矩形的面积(maxi-mini+1)*(maxj-minj+1),如果cnt等于面积,就代表构成一个矩形。题目较为简单,与LeetCode中一道叫做岛屿数量 的题类似,不一样的就是这道题限定了要求是矩形。 用C++实现的代码如下: #include<iostream> #includ...
0
点赞
评论
收藏
分享
lovejsn
01-03 00:18
已编辑
武汉大学 计算机类
题解 | #KMP
本题考查对KMP的next数组的理解。next数组是指一个字符串string s,next[i]的值是对于子字符串s[0]……s[i-1]前后缀长度最大的值,举个例子对于字符串aaacd,next[0]=-1,next[1]=0,next[2]=2,next[3]=0,next[4]=0,next[5]=0. 当我们理解next数组的含义后,这道题就简单了。next数组的末尾值,即next[s.size()]=a表示的是,字符串的前a个字符与后a个字符相同。此时,我们只需遍历next数组,找到数组中小于等于a的值,并取max。 为什么遍历数组找到最大值就行了呢:这是因为,根据next数组的定义...
0
点赞
评论
收藏
分享
lovejsn
2023-11-19 14:46
武汉大学 计算机类
题解 | #长跑#队列#
本题应该注意观察数据,可以首先看出如果距离L小于最大体力,直接输出Yes即可 如果L大于最大体力,我们可以再一次根据初始硬币分为c<1000,不能补给,直接输出No,1000<=c<2000,可以补给一次,此时只需要寻找补给点(如果存在补给点的距离小于最大体力,补给后能到达终点,且补给点收费低于你带的硬币),存在这样的补给点,就可以到达终点,也就是一直出队判断是否存在即可 带了2000的硬币,相对来说比较复杂,如果带了2000,补给一次可以到达,我们就输出Yes,如果不能到达,有可能补给两次就能到达了,但这样子每个商店的售价都必须为1000(这是题目的特点,要我们去发现),然...
0
点赞
评论
收藏
分享
lovejsn
2023-11-15 20:00
武汉大学 计算机类
(C++实现)NC14893,字典最大序问题
该题首先确定何为字典序最大的序列,即输出看成一个数字串,数字最大的哪一种。 我们先将所有输入放入到一个vector数组中去,然后遍历数组。 第一次肯定是直接入栈,一直到N,然后我们得确定N后的数组和栈的最后位置st.top(),哪一个更大。为了确定数组后面元素最大的位置,我写了一个maxIndex函数来返回最大位置下标。 然后,如果是st.top()和后续数组最大值的比较,如果后面的比较大,就一直入栈到那个最大的位置。 如果是st.top()比较大就一直出栈到st.toop()小于后续数组最大值,然后在入栈到那一个最大位置。 最后小tips:1.记得判断栈是否为空 2.遍历完后,记得弹出栈 "...
0
点赞
评论
收藏
分享
1
工具箱
TA的圈子
暂未加入圈子
TA的圈子
TA的笔记
暂无笔记
TA的笔记
登录
0
天
已登录
0
天
连续登录
0
人
今日访客
牛客网
牛客企业服务