中石油训练赛 - Bad Treap(数学)
生活随笔
收集整理的這篇文章主要介紹了
中石油训练赛 - Bad Treap(数学)
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
題目鏈接:點(diǎn)擊查看
題目大意:給出笛卡爾樹的定義,現(xiàn)在要求給出 n 個(gè)點(diǎn)對(duì) ( x , sin( x )?),使得笛卡爾樹的高度盡可能大
題目分析:如果想讓笛卡爾樹的高度盡可能大,令其退化為一條鏈即可,考慮如何令其退化為一條鏈,一個(gè)比較簡(jiǎn)單的方法是讓 x 和 sin( x ) 都單調(diào)
考慮 sin( x ) :在??上單調(diào)遞增
如果拋開 x 是整數(shù)的限制,只需要將這個(gè)長(zhǎng)度為 π 的區(qū)間等分成 n 段就是答案了
那么現(xiàn)在考慮如果 x 是整數(shù)該如何去做,因?yàn)?sin( x ) 是周期函數(shù),所以設(shè)?,那么
當(dāng) n = 3 時(shí),用圖像表示就是這樣:
其意義顯然同樣是將 π 等分成 n 段,然后連成一條鏈輸出即可
所以需要滿足?,得到??
因?yàn)?,換句話說?,綜上得到?,找到一個(gè)較小的 T ,依次輸出其等差數(shù)列即可
然后這個(gè)題目中比較優(yōu)秀的一個(gè) T = 710
代碼:
?
?
總結(jié)
以上是生活随笔為你收集整理的中石油训练赛 - Bad Treap(数学)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 中石油训练赛 - High Load D
- 下一篇: 中石油训练赛 - Trading Car