CodeForces - 1353D Constructing the Array(bfs)
生活随笔
收集整理的這篇文章主要介紹了
CodeForces - 1353D Constructing the Array(bfs)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目鏈接:點擊查看
題目大意:給出一個長度為 n ,初始時全部為 0 的數組 a ,后續進行 n 次操作,每次操作找到最長的連續 0 ,如果有多個則選擇位置最靠左邊的,將這組連續?0 的,最中間位置的數賦值為 i ,i 為第 i 次操作,輸出最后的數列
題目分析:一開始沒什么思路,用線段樹區間合并暴力模擬的,果不其然 TLE 了,其實自己手算模擬幾次就會發現,每個位置至多會被遍歷到一次,且是按照深度擴展的,所以我們可以用 bfs + 優先隊列 不斷擴展就好了,具體實現可以看代碼
代碼:
?
?
總結
以上是生活随笔為你收集整理的CodeForces - 1353D Constructing the Array(bfs)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HDU - 1907 John(尼姆博弈
- 下一篇: CodeForces - 1353E K