不会,爬了
考虑 \(t=n\) 的部分:
倒着扫描 \(s\) ,维护 每个 \(U\) 的答案。
会发现对答案数组是需要等差数列加。
考虑 \(t\ne n\) :
找出一个 \(t\) 之前,与 \(t\) 距离 \(\le U\) 的部分中最小的那一个,一定被经过。 设这个为 \(mid\) , 那 \(ans = ans(s\to n)-ans(mid\to n)+ans(mid\to t)\)
然后就转化成了 \(t=n\) 的问题。
不会,爬了
考虑 \(t=n\) 的部分:
倒着扫描 \(s\) ,维护 每个 \(U\) 的答案。
会发现对答案数组是需要等差数列加。
考虑 \(t\ne n\) :
找出一个 \(t\) 之前,与 \(t\) 距离 \(\le U\) 的部分中最小的那一个,一定被经过。 设这个为 \(mid\) , 那 \(ans = ans(s\to n)-ans(mid\to n)+ans(mid\to t)\)
然后就转化成了 \(t=n\) 的问题。