Codeforces Round #700 (Div. 2) C. Searching Local Minimum 交互二分
生活随笔
收集整理的這篇文章主要介紹了
Codeforces Round #700 (Div. 2) C. Searching Local Minimum 交互二分
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
傳送門
題意: 給一個數組,讓你找到a[i]<min(a[i+1],a[i?1])a[i]<min(a[i+1],a[i-1])a[i]<min(a[i+1],a[i?1])位置iii,每次詢問iii可以得到a[i]a[i]a[i],最多詢問100次,且a[0]=a[n+1]=+∞a[0]=a[n+1]=+∞a[0]=a[n+1]=+∞。
我們考慮假設我們知道了a[i]a[i]a[i]和a[i+1]a[i+1]a[i+1],如果a[i]<a[i+1]a[i]<a[i+1]a[i]<a[i+1],那么左邊一定存在答案,否則右邊一定存在答案,按照這個性質二分就好啦。
可以看下面的圖理解一下,畫出來了a[i]<a[i+1]a[i]<a[i+1]a[i]<a[i+1]的情況,可以發現兩個點連起來延伸的話,因為左邊有個邊界擋著,所以一定會出現一個vvv字型的圖案,vvv字型圖案的拐角處就是答案啦。
總結
以上是生活随笔為你收集整理的Codeforces Round #700 (Div. 2) C. Searching Local Minimum 交互二分的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 姚笛演过的电视剧 这些你都看过吗
- 下一篇: qq昵称女生英文版 好听的qq昵称推荐女