- 博客(43)
- 收藏
- 关注
原创 LeetCode 第467场周赛 第13天
链接:题目链接题解:代码:2. 3684 至多 K 个不同元素的最大和(排序 + 遍历)链接:题目链接题解:代码:3. 3685 含上限元素的子序列和(单调栈)链接:题目链接题解:代码:3. 3686 稳定子序列的数量(DP)链接:题目链接题解:代码:如果对你有帮助,辛苦点个赞,谢谢啦,朋友!!!
2025-09-15 22:52:05
624
原创 LeetCode Hot 100 第12天
链接:题目链接题解:代码:2. 合并两个有序链表链接:题目链接题解:代码:3. 2 两数相加链接:题目链接题解:代码:如果对你有帮助,辛苦点个赞,谢谢啦,朋友!!!
2025-09-06 00:18:43
428
原创 LeetCode Hot 100 第11天
链接:题目链接题解:代码::未优化版本:2. 206 反转链表链接:题目链接题解:代码:2. 234 回文链表链接:题目链接题解:代码:2. 141 环形链表链接:题目链接题解:代码:如果对你有帮助,辛苦点个赞,谢谢啦,朋友!!!
2025-09-05 16:57:11
435
原创 LeetCode 第465场周赛 第10天
链接:题目链接题解:代码:2. 3669 K 因数分解链接:题目链接题解:代码:3. 3670 没有公共位的整数最大乘积链接:题目链接题解:代码:如果对你有帮助,辛苦点个赞,谢谢啦,朋友!!!
2025-09-02 13:10:37
294
原创 LeetCode Hot 100 第9天
链接:题目链接题解:代码:2. 240 搜索二维矩阵 II(规律)链接:题目链接题解:代码:如果对你有帮助,辛苦点个赞,谢谢啦,朋友!!!
2025-08-31 00:46:25
308
原创 LeetCode Hot 100 第8天
链接:题目链接题解:代码:2. 54 螺旋矩阵(模拟 + 边界判断)链接:题目链接题解:代码:3. 2461 长度为 K 子数组中的最大和(双指针)链接:题目链接题解:代码:如果对你有帮助,辛苦点个赞,谢谢啦,朋友!!!
2025-08-29 16:02:05
354
原创 LeetCode Hot 100 第7天
链接:题目链接题解:代码:2. 238 除自身以外数组的乘积链接:题目链接题解:代码:3. 41 缺失的第一个正数链接:题目链接题解:代码:如果对你有帮助,辛苦点个赞,谢谢啦,朋友!!!
2025-08-28 22:58:51
349
原创 LeetCode Hot 100 第6天
链接:题目链接题解:代码:2. 56 合并区间(排序 合并)链接:题目链接题解:代码:如果对你有帮助,辛苦点个赞,谢谢啦,朋友!!!
2025-08-28 00:28:12
309
原创 LeetCode Hot 100 第五天
链接:题目链接题解:代码:2. 239 滑动窗口最大值(单调队列)链接:题目链接题解:代码:3. 76 最小覆盖子串链接:题目链接题解:代码:如果对你有帮助,辛苦点个赞,谢谢啦,朋友!!!
2025-08-27 00:13:31
369
原创 LeetCode Hot 100 第四天
链接:题目链接题解:代码:1. 438 找到字符串中所有字母异位词(滑动窗口)链接:题目链接题解:代码:如果对你有帮助,辛苦点个赞,谢谢啦,朋友!!!
2025-08-25 16:21:38
425
原创 LeetCode 第464场周赛 第三天
背景:仅当 nums[j] < nums[i] 时,才允许跳跃到下标 j,其中 j > i。仅当 nums[j] > nums[i] 时,才允许跳跃到下标 j,其中 j < i。
2025-08-24 23:39:05
803
原创 LeetCode Hot 100 第二天
假设答案区间为[l, r],则要排除掉[l, r]子区间容水量,因为(r - l)子区间只会变得更小,所以仅当子区间Math.min(height[l], height[r])变大才有可能扩大容水量,才有可能容纳更多的水,那么我们需要把这类情况依次排除掉,所以这里要用到双指针,分别在区间左右两端,往内收让Math.min(height[l], height[r])变大。,将y指针下标元素填充至x指针下标,x指针与y指针均往后移,填充完非零元素后,x指针往后移动,填充0元素。题解:这里可以枚举前两个数字。
2025-08-23 18:20:58
280
原创 LeetCode Hot 100 第一天
知道x、target,那么 y = target - x,肯定需要枚举x,如果通过O(1)的时间复杂度找到y的位置,那么整体时间复杂度就在O(n),通过O(1)时间复杂度不可避免的想到HashMap,其中key存y值,value存y的位置,那么通过Hash快速找到需要的值。方案2:可以维护连续区间,把每个数字看成一个节点,枚举x为连续列表的起点,如果x+1也在数组中,那么将x、x+1 union在一起,并且维护区间最大值,最后统计联通块的最大值,这里可以用到并查集来进行维护区间。
2025-08-22 15:39:09
376
原创 2021/4/24团队设计天梯赛总结+部分题解(L1+L2+部分L3)
2021/4/24 天梯赛个人总结(没脸):L1题目集题目及代码 戳此链接L2题目集题目及代码 戳此链接L3题目集题目及部分代码 戳此链接先开门见山吧,这次团队天梯赛159(蒟蒻,希望大佬别笑 ),说实话写这篇文章心里挺矛盾的,因为我觉得都过了半年,长进却不明显,我很犹豫到底写不写,感觉好丢人,但是这次比赛也是真的可惜,因为觉得题挺简单的(部分),最终思考了很久决定还是记录一下吧,这也是个成长的过程,希望以后再看到这篇文章时,能提醒自己山外有山,人外有人,不骄不躁,保持初心。2021/4/24早
2021-04-29 21:37:30
1770
3
原创 2021/4/24团队设计天梯赛L3题目集及部分题解
2021/4/24团队设计天梯赛L3题目集及部分题解:以下题解都是通过PTA测试的,大致保证正确性:查看题目戳此::PTA题目集L3题目集L3-01 森森旅游 (30 分)L3-02 还原文件 (30 分)L3-03 可怜的简单题 (30 分)L3-01 森森旅游 (30 分) 题目描述:好久没出去旅游啦!森森决定去 Z 省旅游一下。Z 省有 n 座城市(从 1 到 n 编号)以及 m 条连接两座城市的有向旅行线路(例如自驾、长途汽车、火车、飞机、轮船等),每次经过一条旅行线路时都需要支付该线
2021-04-29 21:34:40
3836
原创 2021/4/24团队设计天梯赛L2题目集及题解
2021/4/24团队设计天梯赛L2题目集及题解:以下题解都是通过PTA测试的,大致保证正确性:查看题目戳此::PTA题目集L2题目集L2-01 包装机(25分)L2-02 病毒溯源 (25 分)L2-03 清点代码库 (25 分)L2-04 哲哲打游戏 (25 分)L2-01 包装机(25分)思路:签到题 题目描述:一种自动包装机的结构如图 1 所示。首先机器中有 N 条轨道,放置了一些物品。轨道下面有一个筐。当某条轨道的按钮被按下时,活塞向左推动,将轨道尽头的一件物品推落筐中。当 0 号按
2021-04-29 21:08:37
2828
2
原创 2021/4/24团队设计天梯赛L1题目集及题解
2021/4/24团队设计天梯赛L1题目集及题解:以下题解都是通过PTA测试的,大致保证正确性:查看题目戳此::PTA题目集L1-01 人与神 (5 分)思路:签到题 题目描述:跨界大神 L. Peter Deutsch 有一句名言:“To iterate is human, to recurse divine.”(迭代的是人,递归的是神)。本题就请你直接在屏幕上输出这句话。 输入格式:本题没有输入。 输出格式:在一行中输出 To iterate is human, to recurse
2021-04-29 19:49:15
2934
原创 算法竞赛入门经典(第2版)第5章笔记上
哎,之前学习算法的日子并没有系统的学习,东补补西凑凑刷刷题,最近准备用4个月(也就是9月之前)把算法竞赛入门与指南学了(如果你和我一样是小白(大佬忽略),建议系统的学习算法)。日子过得可真快啊,每天学点算法就过完了,但是感觉到头来又忘了,特此写点学习过程中的收获留作复习。算法竞赛入门经典第五章笔记上输入输出流优缺点:用cin输入的方式相比scanf输入的方式最大的优势就是不需要记忆%d %s等占位符,但是也有弊端就是运行太慢。效率不同的两种解释:①cin与stdin总是保持同步的,也就是说这两种
2021-04-22 21:11:17
338
原创 C++vector容器无敌详细
c++学习(复习)之路(大佬跳过)很多小伙伴跟我一样吧,在学习c++的过程中没有系统的学习或者说学了忘了(用c++更多的是觉得STL很方便提供了许多封装好的容器与函数更便于参加比赛)这篇文章便是我学习vector容器的总结:使用vector容器的头文件是#include< vector >vector概念:vector容器常被成为向量容器(据说是线性代数中的一维数组就是叫做向量)vector是一个动态大小数组的顺序容器,可以认为vector是存放任意类型的动态数组vector的特性
2021-04-16 15:12:07
787
原创 ACM-HDU-1007
ACM-HDU-1007题意大概:求n个点中最近两个点的距离的一半思路:用结构体来存x,y值,对结构体的x或y进行排序,从头到尾判断是否有x,y个相等的两个点,有就输出0.00否则就用分治思想的函数:先按x坐标将进行排序,排好序的(x,y)点,分成两部分(左右),基点定为node[mid],mid=(l+r)/2,递归的分下去直到某一部分(左或右)只剩下2个或者3个点(可以直接算出距离比较得出min),最后min只会在3种情况中出现:①.min在右半部分,②,min在左半部分,③.min是跨越左右
2021-03-10 09:24:35
445
1
原创 ACM-HDU-1010 WA and TLE
ACM-HDU-1010 WA and TLE思路:这道题很多小伙伴拿着就去BFS了,但是它并不是求最短路径,用DFS的小伙伴也有TLE的还有WA的(例如我),想懂了之后其实就是DFS+奇偶剪枝(代码上注释了的)+在时间范围内判断能否到达终点,如果在规定时间恰到终点就一直退出递归(用标记量),而WA的小伙伴就是测试数据的问题,查了很久,发现很多人都说有空格的问题,果断换成cin就没事儿了.需要知识:在一个矩阵中每次走一步,那么minlength=abs(startx-endx)+abs(starty-e
2021-03-08 16:33:24
299
原创 ACM-HDU-1005 WA
ACM-HDU-1006思路:因为n<=100000000,所以无论用单纯的递归,还是dp(可能是我的代码太菜了…),都不行,这道题需要知道:f[x]只能取0~6的值,但是f[x]是由f[x-1]与f[x-2]与A,B决定的,所以组合的方式就7*7=49种,用鸽巢定理(m+1个苹果放m个抽屉,必然要有一个抽屉至少是2个苹果),也就是无论如何到f[50]的时候f[48]与f[49]必然是出现过得f[x-1]与f[x-2],后面自然是循环的过程,所以需要找到循环节,答案自然而然就出来了.代码:#in
2021-03-07 11:19:27
314
原创 ACM-HDU-1004
ACM-HDU-1004思路:①将字符串进行排序,相同必相邻,再从头到尾位计数便可.②.用map容器,建立STL的map<string,int>的容器,利用迭代器遍历,按照second取值判断最多颜色数量.③.可以用字典树,用二维数组模拟字典树,然后依次插入单词,同时对每个字母进行统计,再最后在遍历一次n个字符串,找出最多的字符串.(字典树更适合找前缀的操作,以空间换时间,此题并不如上两种方法,很久没用字典树有点忘了,代码就用的字典树方法)代码:#include <bits/s
2021-03-07 11:08:58
279
原创 ACM-HDU-1003
ACM-HDU-1003思路:以数组形式存储数据,通过动态规划的思想,状态转移方程A[x]=max(A[x],A[x]+A[x-1]),其中A[x]代表从第1个数到第n个数的连续最大和,再用一个MAx来存连续最大和值,MAX更新时,l,r要进行更新(也要记录A[x]的连续和的l,r以便于后面更新)。代码:#include <iostream>#include <algorithm>using namespace std;int main(){ int n,m,
2021-03-06 13:12:40
216
原创 ACM-HDU-1001 WA
HDU-1001错因:虽然总和在32位有符号数的范围内,很多同学用等差数列求和公式:但是(a1+an)*n可能会超过超过2^31-1所以要先让a1 or an先除以2代码:#include <iostream>using namespace std;int main(){ int a,k; while(cin >> a){ if(a%2==0){ k=a/2; k*=(a+1);
2021-03-06 10:54:15
155
原创 ACM-HDU-1002 WA
HDU-1002题目题目思路:数字位数在1000以内,自然肯定不能用int 以及long long ,用字符串数组或者string来存储数字,然后再利用高精度加法(也就是相当于自己模拟加法的过程,从个位开始往高位运算,超过10就进1位),然后再利用c++的reverse函数将string反向,再输出.先后错因:对于输入n后需要吸收换行符两个答案之间要输出两个换行符,最后一个答案只需要输出一个换行符即可.对于有前导0的数字要去除前导0(可用迭代器)在对两个数字的最高位进行相加时可能会进一位,如果
2021-03-06 10:36:58
160
原创 2020团队程序设计天梯赛部分题解(C语言)+个人总结
2020团队程序设计天梯赛部分题解(C语言)+个人总结真快呢,PTA上的题刷的差不多了,模拟赛考了162,本以为再努力一点可以冲上200,正赛的结果不尽人意,只打了117分(这么低的分数就不上图了兄弟们),哎拖了队伍后腿,反正也不能放弃吧,哪儿跌倒哪儿爬起来,明年的天梯赛我还要来。冲,兄弟们。天梯赛题目集**2020团队程序设计天梯赛部分题解(C语言)+个人总结**...
2020-12-05 13:51:47
2614
原创 2020团队天梯赛-正赛-L3题目集
L3题目集L3-01 那就别担心了(30分的0分)一级目录L3-01 那就别担心了(30分的0分)题目描述:下图转自“英式没品笑话百科”的新浪微博 —— 所以无论有没有遇到难题,其实都不用担心。博主将这种逻辑推演称为“逻辑自洽”,即从某个命题出发的所有推理路径都会将结论引导到同一个最终命题(开玩笑的,千万别以为这是真正的逻辑自洽的定义……)。现给定一个更为复杂的逻辑推理图,本题就请你检查从一个给定命题到另一个命题的推理是否是“逻辑自洽”的,以及存在多少种不同的推理路径。例如上图,从“你遇到难题了吗?
2020-12-05 13:44:57
2943
原创 2020团队天梯赛-正赛-L2题目集
L2题目集L2-01 简单计算器(25分得25)L2-02 口罩发放 (25分得0分)L2-03 完全二叉树的层序遍历(25分的0分)L2-04 网红点打卡攻略(25分的0分)L2-01 简单计算器(25分得25)题目描述:本题要求你为初学数据结构的小伙伴设计一款简单的利用堆栈执行的计算器。如上图所示,计算器由两个堆栈组成,一个堆栈 S1 存放数字,另一个堆栈 S2 存放运算符。计算器的最下方有一个等号键,每次按下这个键,计算器就执行以下操作:从 S1 中弹出两个数字,顺序为 n1
2020-12-05 13:44:35
2652
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅