91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

描述: 有兩艘船,載重量分別是c1、 c2,n個集裝箱,重量是wi (i=1…n),且所有集裝箱的總重量不超過c1+c2。確定是否有可能將所有集裝箱全部裝入兩艘船。 輸入: 多個測例,每個測例的輸入占兩行。第一行一次是c1、c2和n(n<=10);第二行n個整數(shù)表示wi (i=1…n)。n等于0標(biāo)志輸入結(jié)束。 輸出: 對于每個測例在單獨的一行內(nèi)輸出Yes或No。 輸入樣例: 7 8 2 8 7 7 9 2 8 8 0 0 0 輸出樣例: Yes No 提示: 求出不超過c1的最大值max,若總重量-max < c2則能裝入到兩艘船。

資源截圖

代碼片段和文件信息

//用回溯法,不帶剪枝、限界函數(shù)

#include
#include

#define?NUM 8

void?maxloading(int?const?*wint?constint);
int?n; //記錄集裝箱的數(shù)量
int?cw=0; //當(dāng)前載重量
int?bestc=0; //記錄集裝箱1的最大裝載量

void?main()
{
int?c1c2; //記錄兩只船的載重量
int?i;
int?sum=0; //存儲每組數(shù)據(jù)的集裝箱的總重量
int?counter=0; //記錄一組數(shù)據(jù)處理后的結(jié)果的下標(biāo)
bool?tag[NUM]; //記錄各組數(shù)據(jù)處理后的結(jié)果

// printf(“Input?c1?c2?and?n:\n“);
scanf(“%d?%d?%d“&c1&c2&n);

int?*w=(int?*)malloc(sizeof(int)*n); //記錄每個集裝箱的重量

for(i=0;i tag[i]=false;

while(n)
{
//printf(“Input?weight?of?boxs:\n“);
for(i=0;i {
scanf(“%d“&w[i]);
sum=sum+w[i];
}

maxloading(wc10);

if((sum-bestc)<=c2)
tag[counter++]=true;

評論

共有 條評論