随笔分类 -  算法

摘要:题目链接 https://www.nowcoder.com/practice/459bd355da1549fa8a49e350bf3df484?tpId=13&tqId=11183&tPage=2&rp=2&ru=/ta/coding-interviews&qru=/ta/coding-interv 阅读全文
posted @ 2020-03-11 20:44 醉生梦死_0423 阅读(246) 评论(0) 推荐(0)
摘要:题目链接: https://www.nowcoder.com/practice/947f6eb80d944a84850b0538bf0ec3a5?tpId=13&tqId=11179&tPage=2&rp=2&ru=/ta/coding-interviews&qru=/ta/coding-inter 阅读全文
posted @ 2020-03-10 12:03 醉生梦死_0423 阅读(140) 评论(0) 推荐(0)
摘要:题目链接: https://www.nowcoder.com/practice/b736e784e3e34731af99065031301bca?tpId=13&tqId=11177&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/qu 阅读全文
posted @ 2020-03-09 12:23 醉生梦死_0423 阅读(162) 评论(0) 推荐(0)
摘要:题目链接: https://www.nowcoder.com/practice/d77d11405cc7470d82554cb392585106?tpId=13&tqId=11174&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/qu 阅读全文
posted @ 2020-03-08 10:34 醉生梦死_0423 阅读(101) 评论(0) 推荐(0)
摘要:题目链接: https://www.nowcoder.com/practice/9b4c81a02cd34f76be2659fa0d54342a?tpId=13&tqId=11172&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/qu 阅读全文
posted @ 2020-03-07 22:08 醉生梦死_0423 阅读(204) 评论(0) 推荐(0)
摘要:题目链接: https://www.nowcoder.com/practice/6e196c44c7004d15b1610b9afca8bd88?tpId=13&tqId=11170&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/qu 阅读全文
posted @ 2020-03-07 20:58 醉生梦死_0423 阅读(173) 评论(0) 推荐(0)
摘要:思路:只能用异或,平常数组或者hashmap存储会超时,而且java一直超时……可能读入流太慢了,然后换的c才AC不过思路是一样的,下面是Python测试异或上偶数个相同的数之后结果是不是原来的结果 下面上C代码: int main() { int n,x,m; while(~scanf("%d", 阅读全文
posted @ 2020-03-07 11:35 醉生梦死_0423 阅读(137) 评论(0) 推荐(0)
摘要:原题链接 http://acm.hdu.edu.cn/showproblem.php?pid=2079 思路:一开始看到有些懵,很像之前做的一道换零钱的题目,但是这里由于具体科目数不知道,所以只能用递归做,然后没头绪上网搜了一下,看到了有人用dfs,就试着写了一下,有了如下代码 package hd 阅读全文
posted @ 2020-03-05 15:51 醉生梦死_0423 阅读(260) 评论(0) 推荐(0)
摘要:原题链接: http://acm.hdu.edu.cn/showproblem.php?pid=2063 思路: 一开始用贪心做:按每一个女孩子期望搭档的人的数量将数组排序,然后优先选择期望数量少的,但是在oj上WA了(没想通为啥不行,有会的大佬还望指点/拜托) 然后就在网上看博客,看到大家都是用“ 阅读全文
posted @ 2020-02-28 23:32 醉生梦死_0423 阅读(478) 评论(0) 推荐(0)
摘要:我在本地整理成文档然后打包传百度云了 所以直接放链接啦 链接:https://pan.baidu.com/s/1LF33uA0f8RiYBPa4SJzPLQ 提取码:vi03 祝各位复试顺利,同时也给自己加个油~ 以上 阅读全文
posted @ 2020-02-24 20:55 醉生梦死_0423 阅读(552) 评论(0) 推荐(0)
摘要:原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=2058 思路:等差数列公式变形:sum = a1 * len + len *(len -1)/2 抽象成一句话就是本题的思路:根据数列的长度和数列的和就可以算出首项,因为知道长度,所以区间就出来了(看了好 阅读全文
posted @ 2020-02-08 21:38 醉生梦死_0423 阅读(327) 评论(0) 推荐(0)
摘要://20200322update 最近在重新把hdoj11页做一遍,发现递推还是有些模糊,就重新来更新下,新增一题2045 首先是2045题(RPG问题) 思路:分两种情况 1. 第n-1个元素和第一个元素同色,则第n-2个元素和第一个元素肯定不同色(因为之前的序列都是合法的),那么最后一个元素有两 阅读全文
posted @ 2020-02-04 19:24 醉生梦死_0423 阅读(284) 评论(0) 推荐(0)
摘要:思路:标准贪心 先把所有思路列出来: 1.优先选择开始时间最早的,经分析,不可行 2.优先选择持续时间最短的,经分析,不可行 3.优先选择结束时间最早的,经分析,可行 然后根据第三种思路实现代码就好 实现思路:先将数据存在二维数组里,然后用冒泡排序结束时间升序排序,然后遍历一遍,选择时间能衔接得上的 阅读全文
posted @ 2020-02-02 18:03 醉生梦死_0423 阅读(376) 评论(0) 推荐(0)
摘要:首先说一个剪枝的概念: 剪枝出现在递归和类递归程序里,因为递归操作用图来表示就是一棵树,树有很多分叉,如果不作处理,就有很多重复分叉,会降低效率,如果能把这些分叉先行记录下来,就可以大大提升效率——这就是剪枝技巧。他的做法和动规很像(将状态保存起来,用空间换时间),就是在递归的过程中把出现的状态存储 阅读全文
posted @ 2020-02-02 17:18 醉生梦死_0423 阅读(274) 评论(0) 推荐(0)
摘要:原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=2035 思路:(网上学来的,偏向数学的不咋懂/捂脸)每次乘法的时候都取后三位(可能有些含糊,直接看代码吧,一看就懂) source code: package hduoj; import java.uti 阅读全文
posted @ 2020-02-01 17:41 醉生梦死_0423 阅读(228) 评论(0) 推荐(0)
摘要:question:Super Jumping! Jumping! Jumping! 意思就是找一串数字中的和最大子串 思路:创建另一个数组,每一项是路径数组对应项之前最大子串的和,然后遍历此数组找出最大值即可(也是参考了别人的博客,下面是链接,这是接触的第一道dp题,希望慢慢的自己也会写!) 原文链 阅读全文
posted @ 2020-01-24 17:01 醉生梦死_0423 阅读(356) 评论(0) 推荐(0)
摘要:question:小数化分数2 思路: /** * 这道题没有整数部分(有也无所谓,算小数部分,算完了分子分母按倍数加上就好),也就是说数组直接从a[2]开始后面是小数,我把这道题分为了三类: * * ①普通有限小数 * * ②纯循环小数 * * ③混循环小数 * * 下面就挨个说它的转化方法: * 阅读全文
posted @ 2020-01-14 17:38 醉生梦死_0423 阅读(583) 评论(0) 推荐(0)
摘要:question:相遇周期 思路: 首先将两个分数化为最简形式(也就是分子分母同时除以最大公约数) 然后题意是要求两个分数的最小公倍数 借助以下两个公式,就可以求出结果 1.最小公倍数*最大公约数 = a*b 2.两个分数的最小公倍数:分子为两个分子的最小公倍数,分母为两个分母的最大公约数(前提是分 阅读全文
posted @ 2020-01-14 14:45 醉生梦死_0423 阅读(284) 评论(0) 推荐(0)
摘要:正文之前,先说下做这题的心路历程(简直心累) 这是今天下午的第一道题 第一次看到题目标题——汉诺塔 内心OS:wc,汉诺塔诶,听名字就很难诶,没做过诶,肯定很难实现吧,不行,我得去看看讲解 然后就上b站,看了一遍汉诺塔递归的思路,然后又搜了博客,看了汉诺塔java实现的源码(此时一下午已经过去了…… 阅读全文
posted @ 2020-01-12 19:17 醉生梦死_0423 阅读(268) 评论(0) 推荐(0)
摘要:question:分拆素数和 思路: 1.首先从1一直遍历到数据的1/2位置(因为后面的会和前面的重复),因为是要两个数,所以另一个数就是原数据减去遍历的数字(即i 和data-i),如果二者同时为质数的话,分拆方法计数器就加一,最后输出计数器即可 2.关于如何判断质数,其实就是找约数,数本身不用管 阅读全文
posted @ 2020-01-11 20:09 醉生梦死_0423 阅读(434) 评论(0) 推荐(0)