欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

裝箱問題的Java實現(xiàn)是怎樣的

裝箱問題的Java實現(xiàn)是怎樣的,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

創(chuàng)新互聯(lián)建站主營吉林網(wǎng)站建設的網(wǎng)絡公司,主營網(wǎng)站建設方案,成都App定制開發(fā),吉林h5成都微信小程序搭建,吉林網(wǎng)站營銷推廣歡迎吉林等地區(qū)企業(yè)咨詢

問題:

一個工廠制造的產(chǎn)品形狀都是長方體,它們的高度都是h,長和寬都相等,一共有六個型號,他們的長寬分別為1*1, 2*2, 3*3, 4*4, 5*5, 6*6。這些產(chǎn)品通常使用一個 6*6*h 的長方體包裹包裝然后郵寄給客戶。因為郵費很貴,所以工廠要想方設法的減小每個訂單運送時的包裹數(shù)量。他們很需要有一個好的程序幫他們解決這個問題從而節(jié)省費用?,F(xiàn)在這個程序由你來設計。

Input

輸入文件包括幾行,每一行代表一個訂單。每個訂單里的一行包括六個整數(shù),中間用空格隔開,分別為1*1至6*6這六種產(chǎn)品的數(shù)量。輸入文件將以6個0組成的一行結(jié)尾。

Output

除了輸入的***一行6個0以外,輸入文件里每一行對應著輸出文件的一行,每一行輸出一個整數(shù)代表對應的訂單所需的最小包裹數(shù)。

對于6*6的一個箱子來說,最多只能放一個6*6或一個5*5或4*4的盒子,所以我們初始化需要的箱子數(shù)時就是這這幾種箱子的個數(shù)和,對于3*3的箱子來說,我們可以放一個或2個或3個或4個,這我們可以通過整除和取模來確定放了3*3盒子的箱子數(shù),再把它加入到總箱子數(shù)中,接下來我們就是把1*1和2*2的盒子塞進前面所需的箱子中,當塞不完時再來新增盒子,我們首先要將前面的箱子剩余的空間統(tǒng)計出來,并且要以2*2的優(yōu)先考慮,因為我們可以把多余的2*2的位置變?yōu)樘畛?個1*1的,畢竟1*1的只要有空間隨處都可以塞。所以當我們的箱子要是裝了1個5*5的盒子的話,那么它就只能塞1*1的了,一個可以塞11個1*1的,對于裝了4*4的盒子的話,那么還可以裝5個2*2的盒子,暫且不要去轉(zhuǎn)話成1*1的,除非沒辦法只能裝1*1的,對于3*3的話就可以根據(jù)取模之后一個箱子剩下的空間了,如果一個箱子中只放了一個3*3的,那么還剩下3個3*3的空間可以放,我們知道可以放5個2*2的和7個1*1的,對于放了2個3*3的箱子,我們剩下的空間可以放3個2*2的以及6個1*1的,對于放了3個3*3的箱子,我們只能放1個2*2的和5個1*1的,這樣一來我們就統(tǒng)計出了此時可以放2*2以及1*1的空間到底有多少,接下來我們就放箱子進去啊,放一個就減一個,知道1*1的和2*2的盒子都放完了,要是還沒有放完的話我們就新增箱子或者如果1*1的沒放完,而2*2的還有剩,那么就將每個2*2的轉(zhuǎn)化成4個1*1的就行了,具體實現(xiàn)就看下面的代碼吧,由于時間關系,就沒寫注釋了。

import java.io.BufferedInputStream;

import java.util.HashMap;

import java.util.Map;

import java.util.Scanner;

public class Test {

public static void main(String args[]){

Scanner sc=new Scanner(new BufferedInputStream(System.in));

boolean flag=true;

Map map=new HashMap();

int k=0;

while(flag){

int n[]=new int[6];

n[0]=sc.nextInt();

n[1]=sc.nextInt();

n[2]=sc.nextInt();

n[3]=sc.nextInt();

n[4]=sc.nextInt();

n[5]=sc.nextInt();

if(n[0]==0&&n[1]==0&&n[2]==0&&n[3]==0&&n[4]==0&&n[5]==0){

flag=false;

}else{

map.put(k, n);

k++;

}

}

for(int i=0;i< map.size();i++){

int[] vs=(int[])map.get(i);

int boxNum=0;

boxNum+=vs[3]+vs[4]+vs[5];

if(vs[2]>0){

if(vs[2]%4==0){

boxNum+=vs[2]/4;

}else{

boxNum+=vs[2]/4+1;

}

}

int for1=vs[4]*11;

int for2=vs[3]*5;

if(vs[2]%4==1){

for1+=7;

for2+=5;

}else if(vs[2]%4==2){

for1+=6;

for2+=3;

}else if(vs[2]%4==3){

for1+=5;

for2+=1;

}

if(vs[0]< for1){

vs[0]=0;

}else{

vs[0]=vs[0]-for1;

}

if(vs[1]< for2){

if(vs[0]>0){

if(4*(for2-vs[1])-vs[0]>=0){

vs[0]=0;

}else{

vs[0]=vs[0]-4*(for2-vs[1]);

}

}

vs[1]=0;

}else{

vs[1]=vs[1]-for2;

}

if(!(vs[0]==0&&vs[1]==0)){

if(vs[1]>0){

if(vs[1]%9==0){

boxNum+=vs[1]/9;

}else{

boxNum+=vs[1]/9+1;

if(vs[0]>(9-(vs[1]%9))*4){

if((vs[0]-(9-(vs[1]%9))*4)%36==0){

boxNum+=(vs[0]-(9-(vs[1]%9))*4)/36;

}else{

boxNum+=(vs[0]-(9-(vs[1]%9))*4)/36+1;

}

}

}

}else if(vs[0]>0){

if(vs[0]%36==0){

boxNum+=vs[0]/36;

}else{

boxNum+=vs[0]/36+1;

}

}

}

System.out.println(boxNum);

}

}

}

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。

標題名稱:裝箱問題的Java實現(xiàn)是怎樣的
轉(zhuǎn)載來于:http://aaarwkj.com/article18/pccodp.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設、用戶體驗靜態(tài)網(wǎng)站、標簽優(yōu)化、動態(tài)網(wǎng)站、App開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設計
亚洲乱色一区二区三区丝袜| 国产av剧情精品亚洲| 精品一区二区三区毛卡片| 午夜视频在线观看免费高清国产| 日韩一区二区亚洲精品| 十八禁在线观看点击进入| 亚洲成人av综合在线| 日韩色图在线观看视频| 88国产精品久久久久久| 亚洲最大午夜福利视频| 亚洲美女插入av网络导航| 日本激情精品在线观看| 欧美一区二区三区顶级黄片| 亚洲巨大黑人一区二区三区| 男人自拍天堂在线观看| 日韩av亚洲一区二区三区| 国产精品伦理一区二区三区| 免费特黄特黄的欧美大片| 18岁以下禁止观看的视频| 精品一区二区在线欧美日韩| 91人妻人澡人人爽| 日韩一区二区三区免费播放| 午夜免费成人在线视频| 一区二区三区国产不卡| 欧美男女精品一区二区三区| 亚洲av日韩精品一区二区| 日本黄色免费在线观看网站| 最近日本免费高清完整版| 久久人人97超碰人人爱一久久精品 | 国产美女被狂操到高潮| 亚洲黄香蕉视频免费看| 粉嫩一区二区三区av| 九九热在线视频观看最新| 亚洲精品成人福利网站| 香蕉视频欧美久久精品| 久久精品视频亚洲一级| 日本高清一区二区高清| 久久中文字幕人妻熟av| 日本欧美激情在线观看| 99热这里只有精品网址| 国产l精品国产亚洲区久久|