AT_joisc2017_c
題目描述:過於複雜,略。
答案明顯具有單調性。考慮二分答案。
有一個很自然的想法,沒點燃的要向正在燃的靠近,且一定以最大速度走 \(T\) 秒。
對於一個區間 \([L,R]\),滿足讓它能用一個點燃的互相點燃。有一個條件為 \(X_r - X_l \le 2 \times (r - l) \times v \times T\),轉變一下,即為 \(X_r - 2 \times r \times v \times T \le X_l - 2 \times l \times v \times T\)。
我們就設 \(a_i = X_i - 2 \times i \times v \times T\)。
利用歸納法,要使 \([L,R]\) 合法,\([L+1,R]\) 或 \([L,R-1]\) 就需要合法。
我們找到一個性質最好的區間 \([L,R]\) 滿足 \(L \le k \le R\) 且 \(a_L\) 最大,\(a_R\) 最小。
我們考慮 \([k,k]\) 擴充套件到 \([L,R]\)。
假設當前在 \([l,r]\),先考慮擴充套件 \(l\),到[i,r]。
- \(L \le i \le l \wedge a_l \le a_i\)。
- \(i \le j \le l \wedge a_j \ge a_r\)
其他情況同理。
若不能到 \([L,R]\) 則返回 \(0\)。
最後,我們將 \([1,n]\) 縮小到 \([L,R]\) 即可,與上面同理。