摘要: 本题的重要信息就是最大公约数一定是大于等于一半的a[i]拥有的,也就是说我每次随机取一个,会有50%的机会选中正确答案。 这样我只有随机化多次,就能在极大概率上获得正解。 对于一次随机化,找到所有的约数,之后用最大公约数公式找到最大的能满足条件的答案。 #include<bits/stdc++.h> 阅读全文
posted @ 2020-10-13 20:29 朝暮不思 阅读(123) 评论(0) 推荐(0)
摘要: 答案就是就是区间没有覆盖的长度 有一个直接的想法就是我们发现能够通过推倒建立起来的关系就是一个集合,也就是用并查集缩点,那么之后只需要维护一个后缀和就能做 因为我们不可以将前面的询问影响到后面的答案,因此考虑倒序做。 可以考虑维护一个栈,不断合并能够合并的点,这样后缀和就是栈顶第一个没被合并的点的后 阅读全文
posted @ 2020-10-13 12:00 朝暮不思 阅读(130) 评论(0) 推荐(0)