這題目其實很簡單
把第i個格仔抽象成乙個i*i體積的箱子,那麼這行資料的體積總和為∑a[i]*i*i(1<=i<=6)
然後用這個總體積去除以6*6,即看能放多少個6*6體積的箱子
這個時候要注意!如果能除盡則證明正好分配完整,否則則需要額外再加1個箱子,這裡只要把tot強制轉換成float型再除再比較即可
這樣一來,時間複雜度為o(6*資料組數)空間複雜度o(7)
code:
#include using namespace std;
int a[7],tot,i,sum;
int main()
if(sum==0)return 0;//判斷是否都是0
if((float)tot/36==tot/36)//判斷是否能正好分完
cout<
codevs1464 裝箱問題2
題目描述 description 乙個工廠製造的產品形狀都是長方體,它們的高度都是h,長和寬都相等,一共有六個型號,他們的長寬分別為1 1,2 2,3 3,4 4,5 5,6 6。這些產品通常使用乙個 6 6 h 的長方體包裹包裝然後郵寄給客戶。因為郵費很貴,所以工廠要想方設法的減小每個訂單運送時的...
codevs 1464 裝箱問題 2
題目描述 description 乙個工廠製造的產品形狀都是長方體,它們的高度都是h,長和寬都相等,一共有六個型號,他們的長寬分別為1 1,2 2,3 3,4 4,5 5,6 6。這些產品通常使用乙個 6 6 h 的長方體包裹包裝然後郵寄給客戶。因為郵費很貴,所以工廠要想方設法的減小每個訂單運送時的...
wikioi 裝箱問題
01揹包問題是最經典的動態規劃之一,這道題目甚至是這其中還簡單的一種,因為價值就是本身的重量了。本來比如,w是總重量限制,v是每個的價值。但一開始我都有點忘了,查詢了一下又勾起了回憶。1.它把總重量從1到w作為狀態,對初學者並不是很直觀的。但dp本來就是空間換時間的演算法,裡面經常以整數做狀態,數目...