[CF 1516D] Cut
思路
只有绿那必须自己做啊
转化题意, 对于一个数列 \(a\) 中 \((l, r)\) 的部分, 求怎样最短划分才能使得每一段中的数互质
容易发现对于 \((l, r)\) 确定的情况下, 我们贪心的选择更远点即可, 考虑如何优化才能更快的跳跃
这根上一题的套路一样, 我们预处理出每个点跳跃 \(2^k\) 次之后到达那里, 直接 \(\log n\) 查询即可
总结
善于利用倍增解决跳跃问题
只有绿那必须自己做啊
转化题意, 对于一个数列 \(a\) 中 \((l, r)\) 的部分, 求怎样最短划分才能使得每一段中的数互质
容易发现对于 \((l, r)\) 确定的情况下, 我们贪心的选择更远点即可, 考虑如何优化才能更快的跳跃
这根上一题的套路一样, 我们预处理出每个点跳跃 \(2^k\) 次之后到达那里, 直接 \(\log n\) 查询即可
善于利用倍增解决跳跃问题