Educational Codeforces Round 101 (Rated for Div. 2) D. Ceil Divisions 思维 + 根号数
傳送門
題意: 給一個數組ai=ia_i=iai?=i,每次可以進行操作ax=?axay?a_x=\left \lceil \frac{a_x}{a_y} \right \rceilax?=?ay?ax???,操作不能超過n+5n+5n+5次,最終需要把數組中的數變成n?1n-1n?1個111和一個222。
思路: 比較顯然的是數組中原來的111和222是不需要操作的,可以把222當做最終的222,讓后可以以ana_nan?為分母,讓前面>2>2>2的數都除ana_nan?,但是這個樣子的話,ana_nan?就需要用222來消除,但是操作明顯不夠。那么我們考慮一下n\sqrt{n}n?,顯然我們可以用n\sqrt{n}n?當做分母,an=?anan?a_n=\left \lceil \frac{a_n}{a_{\sqrt{n}}} \right \rceilan?=?an??an???進行兩次即可將ana_nan?化成111。而n=447\sqrt{n}=447n?=447,用222來消除的話還是有點不夠,我們可以繼續開根號,我們發現從2e52e52e5開根號開到>2>2>2的最后一個,最多只有5個根號數,假設為a b c d e 。對于e我們可以ae=?aead?a_e=\left \lceil \frac{a_e}{a_d} \right \rceilae?=?ad?ae???,進行兩次。對于每個根號數都這樣操作,最多需要10次,讓后對于不是根號數的直接以ana_nan?作為分母,一步到位。當根號數為5的時候,操作數為10+n?2?5=n+310+n-2-5=n+310+n?2?5=n+3,滿足題意。
還有注意是上取整,開根號的時候注意判斷是否為平方數,我為了方便直接把每個平方根都+1了。
總結
以上是生活随笔為你收集整理的Educational Codeforces Round 101 (Rated for Div. 2) D. Ceil Divisions 思维 + 根号数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 说课稿格式 这些都是基本格式
- 下一篇: kl什么意思网络用语 这其实是指的一个国