随笔分类 -  天梯赛 Level 1

摘要:题解 这一题有一个核心的点,就是在一天内,一本书是可能有多次借还操作,所以上一次执行了借还操作之后一定要记得清除,避免影响到下一次借还操作。 这一题一般人做开始的思路(dalao除外哈)统计 S 的数量,碰到 E 时就去 S 中找,找到了就返回计算,然后再删除找到的 S 这个点,我开始是这么想的,不 阅读全文
posted @ 2020-10-30 16:27 Fool_one 阅读(109) 评论(0) 推荐(0)
摘要:题解 朴素做法就不说了,用数组简单模拟一下就可以了,时间复杂度为$O(n^2)$。 另一种做法就是 map + set 的方式,set 主要是去重并按从大到小排序,十分符合 arr 数组要求,而 map 主要记录手机号码在 arr 中的下标,这样在遍历手机号码是可以直接映射到arr下标,时间复杂度估 阅读全文
posted @ 2020-10-30 16:06 Fool_one 阅读(65) 评论(0) 推荐(0)
摘要:题解 朴素做法就是一一比对,时间复杂度为$O(N * K * M)$,而且写起来十分吃力,本人开始就是这么做的,还卡了两个测试点。 而这次介绍的解法的时间复杂度为$O(N * K)$,而且写起来十分简单, 采用 map <string, int> 来表示该人是否帅到没朋友,而这类好处就是后期可以直接 阅读全文
posted @ 2020-10-30 15:40 Fool_one 阅读(169) 评论(0) 推荐(0)
摘要:题解 这个题的的思路还是挺简单的,考察的应该是辗转相除法,__gcd()。 但是该题很容易发生溢出,题目也说了分子分母的数据范围在长整型以内,这时首先就需要开 long long,其次倘若直接先求所有分母的最小公倍数,再通分,求所有分子之和,long long 也会溢出的,所以我们必须在输入的时候就 阅读全文
posted @ 2020-10-28 10:34 Fool_one 阅读(172) 评论(0) 推荐(0)
摘要:题解 该题可以直接暴力枚举,首先讲一下思路八。 给定一个数 n ,从 2 开始从小到大进行枚举,当发现一个数能够被整除时,可依据该数再进行连续枚举,注意 n 需要备份,且备份的数也需不断连除,每次记录只需起点和最大长度即可。刚开始我还在用数组存下来,当时我在想啥呢/(ㄒoㄒ)/~~。 #includ 阅读全文
posted @ 2020-10-28 10:19 Fool_one 阅读(318) 评论(0) 推荐(0)