1. 程式人生 > >2018搜狐內推筆試程式設計題2

2018搜狐內推筆試程式設計題2

這個題我的想法是從大到小依次考慮

對於6*6的產品,每個產品需要一個包裹

對於5*5的產品,每個產品需要一個包裹,每個包裹剩下的空間最多可以裝下11個1*1的產品,根據包裹數量更新1*1產品的剩餘數量

對於4*4的產品,每個產品需要一個包裹,每個包裹剩下的空間最多可以裝下5個2*2的產品或者20個1*1的產品,根據包裹數量以及2*2產品的數量進行相應的更新

……

依次討論下去,最後求得所需要的最小包裹數

這樣一種想法是比較自然的,當然這樣討論的話,分的情況比較多,程式碼很長

筆試的時候AC了,但是程式碼忘記copy下來了-.-,這個方法比較笨,寫起來真的煩又耗時間,如果各位有更好的辦法歡迎在評論區提出,感謝感謝~