10 2020 档案

摘要:题解 这一题有一个核心的点,就是在一天内,一本书是可能有多次借还操作,所以上一次执行了借还操作之后一定要记得清除,避免影响到下一次借还操作。 这一题一般人做开始的思路(dalao除外哈)统计 S 的数量,碰到 E 时就去 S 中找,找到了就返回计算,然后再删除找到的 S 这个点,我开始是这么想的,不 阅读全文
posted @ 2020-10-30 16:27 Fool_one 阅读(111) 评论(0) 推荐(0)
摘要:题解 朴素做法就不说了,用数组简单模拟一下就可以了,时间复杂度为$O(n^2)$。 另一种做法就是 map + set 的方式,set 主要是去重并按从大到小排序,十分符合 arr 数组要求,而 map 主要记录手机号码在 arr 中的下标,这样在遍历手机号码是可以直接映射到arr下标,时间复杂度估 阅读全文
posted @ 2020-10-30 16:06 Fool_one 阅读(70) 评论(0) 推荐(0)
摘要:题解 朴素做法就是一一比对,时间复杂度为$O(N * K * M)$,而且写起来十分吃力,本人开始就是这么做的,还卡了两个测试点。 而这次介绍的解法的时间复杂度为$O(N * K)$,而且写起来十分简单, 采用 map <string, int> 来表示该人是否帅到没朋友,而这类好处就是后期可以直接 阅读全文
posted @ 2020-10-30 15:40 Fool_one 阅读(172) 评论(0) 推荐(0)
摘要:题解 这一题看起来很简单,不就是质数吗?但是要在$O(n)$的时间复杂度内实现,还是比较难理解的,在此之前会介绍朴素筛法和埃氏筛法,最后介绍线性筛法。 一、朴素筛法 朴素筛法相对比较简单,在 i 枚举 1 - n 的过程中,不断筛掉 i 对应的倍数即可,这样的确可以把所有的合数都筛掉,但是会有大量重 阅读全文
posted @ 2020-10-30 00:12 Fool_one 阅读(157) 评论(0) 推荐(0)
摘要:题解 这个题的的思路还是挺简单的,考察的应该是辗转相除法,__gcd()。 但是该题很容易发生溢出,题目也说了分子分母的数据范围在长整型以内,这时首先就需要开 long long,其次倘若直接先求所有分母的最小公倍数,再通分,求所有分子之和,long long 也会溢出的,所以我们必须在输入的时候就 阅读全文
posted @ 2020-10-28 10:34 Fool_one 阅读(175) 评论(0) 推荐(0)
摘要:题解 该题可以直接暴力枚举,首先讲一下思路八。 给定一个数 n ,从 2 开始从小到大进行枚举,当发现一个数能够被整除时,可依据该数再进行连续枚举,注意 n 需要备份,且备份的数也需不断连除,每次记录只需起点和最大长度即可。刚开始我还在用数组存下来,当时我在想啥呢/(ㄒoㄒ)/~~。 #includ 阅读全文
posted @ 2020-10-28 10:19 Fool_one 阅读(318) 评论(0) 推荐(0)
摘要:今天是2020年10月26日,中午12:00蓝桥杯省赛成绩出了。 其实我认为自己是一个省二,七段码和平面切割这两题死的不冤,我也在这上面写了题解,七段码如果花点时间还是应该做的出来的,bfs + 并查集,可能会掉入边数枚举的坑,如果不用并查集很容易算出是76,但是这种思考不全面。 其实回文日期这一题 阅读全文
posted @ 2020-10-27 00:45 Fool_one 阅读(224) 评论(0) 推荐(0)
摘要:题解 这一题的正解是邻接表 + bfs。 如果不用邻接表,而用邻接矩阵,在bfs搜索时,会出现大量的无用搜索,因为你也不知道a - b是否相连,所以你就要枚举1 - n来判断是否和a相连就造成了TLE了。 然后有一个细节,我卡了很久,我是直接按照搜索层次求该层的最小值,但是有一个答案Error了,但 阅读全文
posted @ 2020-10-25 22:27 Fool_one 阅读(131) 评论(0) 推荐(0)
摘要:题解 这一题,乍一看,很简单,初始时我也这么以为,模拟了一下结果TLE了,后来再把天数减到小于一年时,又Error了。 后来重新做了一下,估计是,闰年的状态使用了上一次的结果导致,其实直接对第二月赋值即可,真是想多了啊/(ㄒoㄒ)/~~。 #include <iostream> using name 阅读全文
posted @ 2020-10-25 21:43 Fool_one 阅读(119) 评论(0) 推荐(0)
摘要:题解 这一题许多小伙伴暴力枚举,其实没有必要,主要还是要看规律。 首先来看第一个输出答案,其实我们只需要看回文日期的前四个数即可,不足向上加一,满足ABCDDCBA > 输入数据即可。 然后来看第二个输出答案,其实我们只需要看回文日期的前两个数即可,不足向上加一,满足ABABBABA > 输入数据即 阅读全文
posted @ 2020-10-24 10:51 Fool_one 阅读(2627) 评论(0) 推荐(1)
摘要:题解 考几何,唉,这题死的不冤。 这一题的核心思想是递推,你需要判平行和重点,每加入一条边,和其余已经存在的边进行比较,如果平行则无需继续向下做,否则,求交点,判重点,因为存在多条边相交于同一个点,这就需要去重了,最后需要加 1,因为最后会形成一个闭合的区间,新生成的,之后累加,即每加入一条边所划分 阅读全文
posted @ 2020-10-24 10:21 Fool_one 阅读(626) 评论(0) 推荐(0)
摘要:题解 正规解法是 dfs + 并查集,首先用 dfs 将其所有的情况枚举出来,再用并查集来判断是否在一个连通块上。 许多小伙伴计算的答案为76,主要是判断连通块这方面有问题,倘若不用并查集,直接枚举一条边是否和其余剩下的边相连,是就成立,不是就可以直接退出了,但是有一个问题是例如两个连通块的时候你上 阅读全文
posted @ 2020-10-24 08:46 Fool_one 阅读(3913) 评论(11) 推荐(2)