A
给你一个整数n,要求你找到一个大于等于n的最小的好数m。
好数:一个数是好数如果这个数能拆成多个3n相加(所有的n不能两两相等)。
暴力的方法还是比较简单的,把所有可能的方法依次枚举一下就好了(毕竟数据范围太小了)。后面的困难版我会写一下题解。
B
有n个人,每个人的能力为a[i],你想将这n个人分成好几队。分组的规则如下:
如果有两个人的能力值的差的绝对值等于1(| a[j]-a[i] |==1),那么这两个人不能在同一队中。
问最小能分成多少队。
水题。
C
在x轴上给出n条线段,每条线段都给出了左右端点l[i]和r[i]。如果有某个点上覆盖了多于k条线段,那么这个点就是一个坏点。问:我们最少要删除多少条线段,使得x轴上不存在坏点。
思路/感想: 这个题其实也就是暴力枚举,唯一的难点可能就在于用差分和前缀和来描绘出所有区间的位置情况了,但这个我前两天刚刚见了一个几乎一模一样的用法(A Game with Traps),因此也就做出来了。
D
有n个孩子,每个孩子都有一本书,在一天结束之后,第i个孩子就会把自己的数给第p[i]个孩子。问:第i个(1<=i<=n)孩子的书最少要经过多少天才会重新回到他手里。
思路/感想: 这个题比较的简单,就是把每个孩子借书的路径都模拟一遍就行了。但优化就稍微有一些困难了。
E
给你一个整数n,要求你找到一个大于等于n的最小的好数m。
好数:一个数是好数如果这个数能拆成多个3n相加(所有的n不能两两相等)。
A题困难版,增大了数据范围。
C2.Good Numbers
F
在x轴上给出n条线段,每条线段都给出了左右端点l[i]和r[i]。如果有某个点上覆盖了多于k条线段,那么这个点就是一个坏点。问:我们最少要删除多少条线段,使得x轴上不存在坏点。
C题困难版,增大了数据范围。
D2.Too Many Segments
G
有n个孩子,每个孩子都有一本书,在一天结束之后,第i个孩子就会把自己的数给第p[i]个孩子。问:第i个(1<=i<=n)孩子的书最少要经过多少天才会重新回到他手里。
D题困难版,增大了数据范围。
B2.Books Exchange
感想
这次的题目并没有前几天的题目难度那么大,很多的难题都还没往上放。但这次感觉我做的并不是很好,首先是太慢了,很多的题应该能更快一点做出来的。这周的训练也告一段落了,经历了这周的训练,我感觉有提高的地方好像也就只有英语了。思维方面的提高其实并不是很明显,但多少应该还是有一点的把。明天可以抽出时间来把前面该补还没有补的题目补一下,训练的第一周也就顺利的结束了。