第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

巧克力切割問題

巧克力切割問題

www說 2019-04-13 08:45:37
【問題描述】Jzzhu有一塊很大的巧克力,它由n?×?m個(gè)正方形小塊組成。Jzzhu想要對巧克力進(jìn)行k次切割。每次切割都滿足如下規(guī)則:每次切割都必須是直的(橫向或縱向);每次切割都必須沿著正方形小塊的邊緣(不能切到里面);每次都必須一切到底。想象Jzzhu進(jìn)行了k次切割,巧克力被分成了幾塊?,F(xiàn)在請考慮最小的那一塊,Jzzhu希望這一塊盡可能的大。那么在切割k次后這塊最小的巧克力的大小的最大值是多少?巧克力的大小請以其所含的正方形小塊的個(gè)數(shù)為基準(zhǔn)?!据斎搿績H有一行,包含n,?m,?k【輸出】輸出共一行,包含一個(gè)整數(shù),表示最小塊的最大值。如果無法切割k次,輸出-1。比如說6*7的巧克力分5刀,答案為7?!据斎胼敵鰳永?】in642out8【輸入輸出樣例2】in234out-1
查看完整描述

2 回答

?
慕慕森

TA貢獻(xiàn)1856條經(jīng)驗(yàn) 獲得超17個(gè)贊

一、k<min(m,n)計(jì)算(m//(k+1))*n和(n//(k+1))*m,取較大者二、min(m,n)<=kn計(jì)算(m//(k+1))*n和m//(k-n+2),取較大者三、k>=max(m,n)計(jì)算m//(k-n+2)和n//(k-m+2),較大者四、k>m+n-2out:-1注://為整除思路大概就是:切k刀,即分k+1塊,所以好的情況是均分(整除),所以有任何一邊能被k+1整除,答案就出來的;但是如果min(m,n)<=k<max(m,n)即小的一邊夠切,長邊夠切:那就分別考慮短邊切完再切長邊,和只切長邊的情況;如果k>=max(m,n),即長短邊都不夠切:那就分別考慮先長后短和先短后長的情況。最后k>m+n-2,這種就是下不了刀了,都切滿了。PS:上面有個(gè)假設(shè)一定要先切完一邊再切另一邊,我是這樣認(rèn)為的,每多一刀,每塊大小從1/k減少到1/(k+1),即1/(k+1)*k,即減少量遞減,如果換到另外一邊則k=1,則直接減少一半!上面假設(shè)沒有嚴(yán)謹(jǐn)證明,可能是錯(cuò)誤的,哈哈~
查看完整回答
反對 回復(fù) 2019-04-13
?
ITMISS

TA貢獻(xiàn)1871條經(jīng)驗(yàn) 獲得超8個(gè)贊

首先這個(gè)是Codeforces原題鏈接。div2c
看了采納的那個(gè)回答。感覺有點(diǎn)問題,因?yàn)樯婕暗降牟僮鞫际钦杂袝r(shí)貪心是不對的。
說另一個(gè)非貪心做法。
原題中n,m<=10^9顯然O(n)的算法是過不去的。
(當(dāng)時(shí)做那場cf的時(shí)候是bk大神告訴的做法。)
首先判無解。
有解時(shí),然后我們要枚舉切幾刀,顯然平均更優(yōu),但是這個(gè)枚舉不能每個(gè)都枚舉。
我們要求的是[n/x]*[m/(k-x)]的最大值([]下取整)。
可以證明一個(gè)數(shù)n,整除它的結(jié)果最多只有2√n種取值。
然后就可以枚舉[n/x]的取值。
就可以在O(√n)時(shí)間內(nèi)解決。
                            
查看完整回答
反對 回復(fù) 2019-04-13
  • 2 回答
  • 0 關(guān)注
  • 377 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號