摘要: Solution 我们可以对前 \(k+1\) 个元素询问 \(k+1\) 次,因为题目中明确说明 \(k<n\) ,所以是不会超的。 这样做的正确性:每次会少一个数,当你少的是第 \(m\) 个数之前的数或 \(m\) 时,返回的会是第 \(m+1\) 大的数,当你少的是 \(m\) 之后的数时, 阅读全文
posted @ 2020-10-07 16:55 jasony_sam 阅读(103) 评论(0) 推荐(0) 编辑
摘要: Solution 想要得到差最大,只能是最小的自己一组或者全部在一组,因为:如果拿另一个和最小的一组,最小值只有可能最小,最大值只有可能更大,反证完毕。 那么我们可以将 \(a\) 数组从小到大排序,那么现在 \(a_1\) 是 \(\min a\) , \(a_n\) 是 \(\max a\) , 阅读全文
posted @ 2020-10-07 13:53 jasony_sam 阅读(120) 评论(0) 推荐(0) 编辑
摘要: Solution 看到是一个异或和的序列,我们可以考异或的性质。 我们构造一个数组 \(b\) : \(b_0=0,b_i=a_i\oplus b_{i-1}\) ,由异或性质得 \(a_i=b_i\oplus b_{i-1}\) ,所以 \(a_l\oplus a_{l+1}\oplus\cdot 阅读全文
posted @ 2020-10-07 13:52 jasony_sam 阅读(132) 评论(0) 推荐(0) 编辑
摘要: Solution 通过最短路和 \(n\leq 100\) 得知我们可以拿 \(floyd\) 预处理全源最短路。然后因为要换车,所以我们可以考虑dp,设 \(dp_i\) 为 \(i\) 到终点 \(b\) 的最坏换车次数,但是从起点开始可能会有后效性,所以从终点开始,即 \(dp_b\) 为 $ 阅读全文
posted @ 2020-10-07 13:51 jasony_sam 阅读(154) 评论(0) 推荐(0) 编辑
摘要: Solution 看题和 \(\gcd\) 有关系,所以我们可以先考虑一下质数,然后发现对于质数 \(x\) ,当他不 \(lonely\) 即满足条件的时候,是 \(x^2\) 出现的时候,因为 \(x+1>x,x+x>1\) 。 现在考虑合数,分两种情况,一种是形似 \(p^2\) 的( \(p 阅读全文
posted @ 2020-10-07 13:50 jasony_sam 阅读(142) 评论(0) 推荐(0) 编辑