摘要:
C. Balanced Stone Heaps 最小值最大 显然二分 考虑check 首先我们从前往后做的话 要考虑后面的消息 显然不可取 我们考虑从后往前做 但是这里要注意的只有一点就是 我们从后往前做 但是本来就是从前往后的 所以我们拿去前两堆的不能超过本来a[i]的 取个min就好 #incl 阅读全文
posted @ 2022-10-13 21:09
ycllz
阅读(23)
评论(0)
推荐(0)
摘要:
D. Maximum Product Strikes Back 显然我们是不喜欢0的 我们可以对0进行切割 分成若干段 然后我们要是是段数内乘积为负数 显然我们也是不喜欢的 我们必须要砍掉一个负数 才能让他变成整数 这里可以二分也可以直接遍历都是差不多的 然后我们如何算贡献呢 显然我们最低都是1 我 阅读全文
posted @ 2022-10-13 21:05
ycllz
阅读(18)
评论(0)
推荐(0)
摘要:
D. Insert a Progression 显然我们可以对a1——a2之间的数全部都插入期间 显然是没有贡献的 并且我们我们的1-x 只用维护最小1 和 最大x 即可 显然要是我们要是mn中没有1 我们要让1插进去 当插头尾的时候只有一边贡献 中间就会有左右两边贡献 这样我们处理了1 我们再判断 阅读全文
posted @ 2022-10-13 16:45
ycllz
阅读(25)
评论(0)
推荐(0)
摘要:
F. Vlad and Unfinished Business 和一般的求多个点都到达的最小距离不同 这里规定了终点 这样我们首先x-y这条链可以确定 当然我们这条链可以通过让path[y]等于1 因为树中两点距离确定所以链一定 我们直接通过return时就可以确定链 然后我们还要确定的就是这个子树 阅读全文
posted @ 2022-10-13 15:19
ycllz
阅读(22)
评论(0)
推荐(0)
摘要:
C. Sequence Pair Weight 我们发现不管是分组内计算 或者是暴力都是不可取的 我们思考反想 一对相同数能够有算进多少种方式 显然是i*(n-i+1)的组合数 显然要是有第三个相同的数也是可以和前两个的组合的 所以我们记录一个mp[a[i]]表示前面a[i]存的下标即可 void 阅读全文
posted @ 2022-10-13 14:13
ycllz
阅读(23)
评论(0)
推荐(0)