国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

cf刷題筆記: 1742E. Scuza

2022-10-15 14:14 作者:StepfenShawn  | 我要投稿

題目地址:

https://codeforces.com/problemset/problem/1742/E

暴力法超時(shí)

大概意思給出腿長(zhǎng)和每個(gè)階梯的高度差,求出該腿長(zhǎng)下能達(dá)到最大的高度。

看完題目后,估計(jì)大家心想: 這么簡(jiǎn)單還放在E題?

一開(kāi)始想法直接暴力模擬, 為什么暴力呢? 我們只需要迭代高度差并比較腿長(zhǎng), 直接將算出最高的高度, 這樣的算法復(fù)雜度才O(n), 值得賭一手:

看到測(cè)試用例一直都正確通過(guò),心里還是挺開(kāi)心的,結(jié)果到了test5,超時(shí)。。。

二分查找答案

我們先用前綴和的方法求出樓的總高度, 假設(shè)前綴和數(shù)組為b, 那么不管腿長(zhǎng)為多少, 答案的范圍必定在[0,?b[-1]]之間.

既然答案的范圍都找到了,不然想到用二分法去搜索,這樣算法復(fù)雜度會(huì)降到O(nlogn)。

如何搜索呢? 我們將問(wèn)題轉(zhuǎn)化, 對(duì)于腿長(zhǎng)K, 我們需要在a1,...,ai中找到下標(biāo)i使得ai <= k (這里的ai是a1,...,ai的最大值)

我們需要新建另一個(gè)數(shù)組m, 滿足mi = max(a1, ..., ai), 于是mi <= k。接下來(lái)我們可以用二分搜索找到這個(gè)索引i, 輸出b[i]就是我們的答案了

本題貌似還滿足最優(yōu)子結(jié)構(gòu), 本蒟蒻還在想一種dp解法, 可惜太弱沒(méi)把狀態(tài)方程找出來(lái)。。

cf刷題筆記: 1742E. Scuza的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
宣汉县| 来凤县| 玛曲县| 仙居县| 南溪县| 东丽区| 乌兰察布市| 康保县| 海伦市| 建平县| 肃宁县| 罗平县| 云梦县| 进贤县| 沁水县| 策勒县| 宾阳县| 武夷山市| 新乐市| 和田市| 铜山县| 兴宁市| 赣州市| 手游| 织金县| 汶上县| 高雄市| 郸城县| 慈溪市| 应用必备| 温州市| 清涧县| 南安市| 梁山县| 绥宁县| 东乡| 祁门县| 安康市| 介休市| 天镇县| 兖州市|