<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Dr_Si的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Dr_Si</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Dr_Si]]></copyright><item><title><![CDATA[力扣HOT100-7 无重复字符的最长子串(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/162440966</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/162440966</guid><author>Dr_Si</author><pubDate>Tue, 30 Jun 2026 10:27:01 +0800</pubDate><description><![CDATA[1.必须由原字符串中的一段字符组成，不能跳过字符。2.子串内的任意两个字符都不相同。3.我们可以选择暴力破解，美剧所有子串并检查每个子串是否有重复字符，但是太慢了。换个思路考虑，拿‘abcdbbacnaxd’举例，无重复字符那么a开始，其子串肯定不能包含a，所以其实区间为'abcdbb'然后再依此判断。]]></description><category></category></item><item><title><![CDATA[力扣HOT100-6 三数之和(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/162276007</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/162276007</guid><author>Dr_Si</author><pubDate>Thu, 25 Jun 2026 13:44:50 +0800</pubDate><description><![CDATA[1.如果我们先固定一个数 a，问题就退化为在剩下的数中找 b + c = -a，这恰好是两数之和问题。2.由于题目要求去重，且数组元素可能重复，使用排序 + 双指针会比哈希表更方便去重。]]></description><category></category></item><item><title><![CDATA[力扣HOT100-5 盛最多水的容器(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/162274618</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/162274618</guid><author>Dr_Si</author><pubDate>Wed, 24 Jun 2026 15:37:10 +0800</pubDate><description><![CDATA[1.木桶效应，短边决定蓄水量2.选定i < j，水量 =]]></description><category></category></item><item><title><![CDATA[力扣HOT100-4 移动零(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/162270269</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/162270269</guid><author>Dr_Si</author><pubDate>Wed, 24 Jun 2026 13:55:59 +0800</pubDate><description><![CDATA[1.只能原地对数组进行操作，保持非零元素的原有顺序2.就是把零移动到末尾。]]></description><category></category></item><item><title><![CDATA[力扣HOT100-3 最长连续序列(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/162265444</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/162265444</guid><author>Dr_Si</author><pubDate>Wed, 24 Jun 2026 11:48:42 +0800</pubDate><description><![CDATA[1.给定一个未排序的整数数组nums，找出其中数字连续的最长序列的长度。2.注意序列中的元素在原数组中不必连续，只需要数值连续。]]></description><category></category></item><item><title><![CDATA[力扣HOT100-2 字母异位词分组(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/162262837</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/162262837</guid><author>Dr_Si</author><pubDate>Wed, 24 Jun 2026 10:57:04 +0800</pubDate><description><![CDATA[1.词组只包含小写字母2.异位词就是字母位序不一致而已，那么反过来，字母位序一致就算做一组答案。]]></description><category></category></item><item><title><![CDATA[力扣HOT100-1 两数之和(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/162261823</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/162261823</guid><author>Dr_Si</author><pubDate>Wed, 24 Jun 2026 10:33:28 +0800</pubDate><description><![CDATA[1.只存在一个有效答案2.给一列数字数组nums，和一个目标值target，找到和为target的两数下标。]]></description><category></category></item><item><title><![CDATA[使用nssm注册rocketmq脚本为服务失败(已解决)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/151351451</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/151351451</guid><author>Dr_Si</author><pubDate>Tue, 09 Sep 2025 09:14:51 +0800</pubDate><description><![CDATA[/此画面我打开的是edit不是install，所以最下面是Edit service 而不是install。点击框选按钮选择自己设定的bat脚本，下面的Startup directory的会自动选择。前置可以看到脚本启动了jar包，根据网络搜索应该是服务的环境配置的问题。此时在nssm目录下注册服务(根据本机配置选择win64或win32)点击框选按钮，点击Environment按钮编辑服务环境。输入(根据本机jdk位置调整第三个jdk的环境路径)点击install后提示服务注册成功。]]></description><category></category></item><item><title><![CDATA[CF 673A.Bear and Game(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/146338540</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/146338540</guid><author>Dr_Si</author><pubDate>Tue, 18 Mar 2025 12:46:17 +0800</pubDate><description><![CDATA[遍历n个数据与i-1比较，如果大于15，说明要关电视了，最多还看15分钟(即i-1的值+15)。反之如果小于等于15，那他就继续看，直到比赛结束或者关电视。由于数据输入中没有起始0分种和90分钟，所以首尾添上方便计算。输入n个数据，表示在该分钟时有趣。如果连续15分钟都是无趣，则关闭电视，问利马克看多久电视。见解，希望能得到您的指点和点悟；如果您是和我一样的同学，也希望这篇文章能对您有所帮助。]]></description><category></category></item><item><title><![CDATA[CF 452A.Eevee(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/146029587</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/146029587</guid><author>Dr_Si</author><pubDate>Tue, 04 Mar 2025 23:12:19 +0800</pubDate><description><![CDATA[首先给了长度，那我先判断长度相同的单词，然后再一一对比，如果都能通过，那就输出这个单词。见解，希望能得到您的指点和点悟；如果您是和我一样的同学，也希望这篇文章能对您有所帮助。输入一个数字-长度，输入一个字符串。判断这个字符串是具体的哪一个单词。]]></description><category></category></item><item><title><![CDATA[CF 886A.ACM ICPC(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/146001990</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/146001990</guid><author>Dr_Si</author><pubDate>Mon, 03 Mar 2025 23:09:00 +0800</pubDate><description><![CDATA[首先判断总和是不是一个偶数，如果不是就“NO”。由于小何同学算法不好，只能使用三层for循环强行判断某三个值是否能等于总和的一半，可以就“YES”。见解，希望能得到您的指点和点悟；如果您是和我一样的同学，也希望这篇文章能对您有所帮助。输入6个值，判断某三个值的和能够等于另外三个值的和。]]></description><category></category></item><item><title><![CDATA[CF 118A.String Task(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/145972990</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/145972990</guid><author>Dr_Si</author><pubDate>Sun, 02 Mar 2025 23:58:56 +0800</pubDate><description><![CDATA[将输入的字符串改为字符数组，考虑到任意位置插入的情况，所以主要选择LinkedList，并遍历判断如果是元音就remove。如果是辅音，首先判断是否是大写，如果是大写就调用set方法改为小写，然后在其位置add('.')。输入一个字符串，遍历每一个字符，如果是元音字母就删除，辅音字母就在其前面增加一个'.'，且所有字母输出都是小写。见解，希望能得到您的指点和点悟；如果您是和我一样的同学，也希望这篇文章能对您有所帮助。]]></description><category></category></item><item><title><![CDATA[CF 109A.Lucky Sum of Digits(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/145951293</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/145951293</guid><author>Dr_Si</author><pubDate>Sat, 01 Mar 2025 18:24:27 +0800</pubDate><description><![CDATA[由于是最小组合，即判断4能最多有多少个。但是如果一个值能完全被7整除，那就不需要4了，只用7组合的话位数会更短。(例如28总和，可以是4个7，也可以是7个4。如果完全判断4最多的情况位数反而更长了，所以要考虑能被7完全整除的情况)。此外由于组合可能会过长，用于输出答案的数据类型不能用数字表示，只能输出字符串，否则会由于溢出而显示错误答案。给定一个值，判断这个值能否被4和7组成，如果能就输出最小的组合。见解，希望能得到您的指点和点悟；如果您是和我一样的同学，也希望这篇文章能对您有所帮助。]]></description><category></category></item><item><title><![CDATA[CF 106B.Choosing Laptop(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/145937182</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/145937182</guid><author>Dr_Si</author><pubDate>Fri, 28 Feb 2025 20:35:23 +0800</pubDate><description><![CDATA[(这个题我没考虑好用什么结构，所以采用了二维数组)new一个n行5列的二维数组，第五列参数就是序列，双重for循环判断a行是否完全小于b行，小于则给对应行的第5列赋0。最后用Arrays.sort针对每行的第4列价格排序，输出第一个n行5列不为0的序列。一共n组数据，每行数据包括三个参数和一个价格，隐藏了一个值->序列。每行比较其他行参数，如果a行的三个参数全都小于b行对应参数，则过时不考虑。筛除过时电脑后，对价格进行排序，价格最小且不过时的电脑输出对应的序列。见解，希望能得到您的指点和点悟；]]></description><category></category></item><item><title><![CDATA[CF 106A.Card Game(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/145916230</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/145916230</guid><author>Dr_Si</author><pubDate>Thu, 27 Feb 2025 23:30:07 +0800</pubDate><description><![CDATA[需要判断a，b的大小和花色。由于大小等级不按ASCII码排序，那就按indexof下标排序，下标越小则牌就越小。然后根据花色判断：1.a是王牌，b不是时，a胜；2.a是王牌，b是王牌，a>b，a赢；3.a不是王牌，b不是王牌，且a，b花色一致，a>b，a赢。定义一个字符是王牌，打出第一张牌a，第二张牌b。如果只有a是王牌花色直接赢。如果a，b同花色且a>b则a赢；如果只有b是王牌，a输。如果a，b都不是王牌且不同花色，不比较直接输。如果您是和我一样的同学，也希望这篇文章能对您有所帮助。]]></description><category></category></item><item><title><![CDATA[力扣 807. 保持城市天际线(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/145884399</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/145884399</guid><author>Dr_Si</author><pubDate>Wed, 26 Feb 2025 17:43:16 +0800</pubDate><description><![CDATA[所谓四个方向高度不变的增量，其实就是arr[i][j]与同i行最大值同j列最大值之间的最小值的差，有点绕，举例：grid[0][0]的高度增量=同0行最大值8与同0列最大值9之间的最小值，即8的差为8-3=5。同理推出其他位置的增量求和。用一个行为2列为grid.length的二维数组存储每行每列的最大值，例如第一行最大值存在[0][0],第一列最大值存在[1][0]，依此类推。然后重新遍历grid的每个元素进行题目分析所述的操作,计数器+=Math.min(行最大值，列最大值)-grid[i][j]。]]></description><category></category></item><item><title><![CDATA[CF 90A.Cableway(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/145881824</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/145881824</guid><author>Dr_Si</author><pubDate>Wed, 26 Feb 2025 16:46:05 +0800</pubDate><description><![CDATA[每走一辆车则到达山顶的时间就多一分钟，那只需要计算走了多少辆车。如果按照笨方法，顺着题目思路去做，每辆车一走，车人数就-2，如果三个车都没人了就结束。输入三个数字分别代表r，g，b三组学生数量，缆车按照r-g-b-r的方式循环，每一分钟来一辆车，且初始0时r车准备出发。全程上山时间为30分钟。见解，希望能得到您的指点和点悟；如果您是和我一样的同学，也希望这篇文章能对您有所帮助。但是这样看呢，重复的代码太多了，我们就再重新理一理。]]></description><category></category></item><item><title><![CDATA[CF 74A.Room Leader(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/145877435</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/145877435</guid><author>Dr_Si</author><pubDate>Wed, 26 Feb 2025 14:16:11 +0800</pubDate><description><![CDATA[(这个翻译还是很奇怪，hh)输入n组数据，每组数据包括角色名字，赢几场，输几场，和5场分数。题目要求输出最多分数的角色名字，则需要计算出每个角色获得的分数=赢场数*100+输场数*-50+5场分数总和。一共5组数据，使用HashMap一一对应每个角色名和分数。在存值时进行数据处理。见解，希望能得到您的指点和点悟；如果您是和我一样的同学，也希望这篇文章能对您有所帮助。]]></description><category></category></item><item><title><![CDATA[力扣 3248. 矩阵中的蛇(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/145862000</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/145862000</guid><author>Dr_Si</author><pubDate>Tue, 25 Feb 2025 20:41:23 +0800</pubDate><description><![CDATA[首先设置初始位置=0，当读取操作时进行对应的操作。由示例可以看出，UP操作就是i-=n;RIGHT操作就是i+=1;DOWN操作就是i+=n;LEFT操作就是i-=1.给定一个值n，既是矩阵边长还是操作次数。蛇可以进行上下左右操作，问操作完毕后的位置。见解，希望能得到您的指点和点悟；如果您是和我一样的同学，也希望这篇文章能对您有所帮助。]]></description><category></category></item><item><title><![CDATA[力扣 3280. 将日期转换为二进制表示(Java实现)]]></title><link>https://blog.youkuaiyun.com/Dr_Si/article/details/145859968</link><guid>https://blog.youkuaiyun.com/Dr_Si/article/details/145859968</guid><author>Dr_Si</author><pubDate>Tue, 25 Feb 2025 18:49:20 +0800</pubDate><description><![CDATA[输入一个String类型值，用split("-"),分割每个值，再通过Integer.toString(int,int)将值进制转化为2。见解，希望能得到您的指点和点悟；如果您是和我一样的同学，也希望这篇文章能对您有所帮助。给定一个10进制日期，将年月日转化为2进制。]]></description><category></category></item></channel></rss>