%%这个是计算第六关的第一种情况的代码
%%三个人不见面,都尽量往终点走
%% 首先到
%%Time: 2020.09.12 20:30
%%Version V2.0
Sum_first_water = 0;
Sum_first_food = 0;
Sum_second_water= 0;
Sum_second_food = 0;
Sum_third_water = 0;
Sum_third_food = 0;
for i = 1:1:2000
Length = Rank_scale([0,1],30,1); %%加载天气变量
[First_water1,First_food1] = RoadConsume(Length,1,1);
[First_water2,First_food2] = RoadConsume(Length,2,8);
[Second_water1,Second_food1] = RoadConsume(Length,1,1);
[Second_water2,Second_food2] = RoadConsume(Length,2,8);
Sum_first_water = Sum_first_water + 2 * First_water1 + First_water2;
Sum_first_food = Sum_first_food + 2 * First_food1 + First_food2;
Sum_second_water = Sum_second_water + 2 * Second_water1 + Second_water2;
Sum_second_food + Sum_second_food + 2 * Second_food1 + Second_food2;
[Third_water1,Third_food1] = RoadConsume(Length,1,6);
Third_water2 = Length(7,1);
Third_food2 = Length(7,2);
[Third_water3,Third_food3] = RoadConsume(Length,8,8);
Sum_third_water = Sum_third_water + Third_water1 + Third_water2 + Third_water3;
Sum_third_food = Sum_third_food + Third_food1 + Third_food2 + Third_food3;
end
FirstWater = Sum_first_water/2000;
FirstFood = Sum_first_food/2000;
SecondWater= Sum_second_water/2000;
SecondFood = Sum_second_food/2000;
ThirdWater = Sum_third_water/2000;
ThirdFood = Sum_third_food/2000;
WalletMoney=30000 - ceil(FirstWater + SecondWater + ThirdWater) * 5 - ceil(FirstFood + SecondFood + ThirdFood) * 10
%
% for i = 1:1:2000
% Length = Rank_scale([0,1],30,1); %%加载天气变量
% [First_water,First_food] = RoadConsume(Length,1,5); %%%前五天路上的消耗
% Sum_first_water = Sum_first_water + First_water;
% Sum_first_food = Sum_first_food + First_food;
% [water,food] = RoadConsume(Length,6,7);
% %%
% %%村庄补满,用于判断在矿上挖矿的时间
% for data = 7:1:27
% m = data
% [kuang_water,kuang_food] = MinerConsume(Length,7,data); %%计算挖矿的消耗
% [mwater,mfood] = RoadConsume(Length,data+1,data+2); %%计算去村庄的路上的物资消耗
% if (water*3+food*2+kuang_water*3+kuang_food*2+mwater*3+mfood*2>=1200)
% Em = m - 1 - 7
% break;
% end
% end
% %%
% %%求出挖矿的时间后,重新代入,求消耗的物资量,最终实现,最优的水和实物的搭配
% for data = 7:1:m - 1
% m = data;
% [kuang_water,kuang_food] = MinerConsume(Length,7,data); %%计算挖矿的消耗
% [mwater,mfood] = RoadConsume(Length,data+1,data+2); %%计算去村庄的路上的物资消耗
% end
% sumwater = sumwater + water + kuang_water + mwater; %%去矿上,挖矿,到村庄消耗
% sumfood = sumfood + food + kuang_food + mfood;
% SumEm = SumEm + Em;
% %%
% %%再补给,在挖矿,再回家
% [Second_water,Second_food] = RoadConsume(Length,data+2,data+3); %%从村中回到矿山
% data2 = data+3
% for data = data2:1:27
% m = data
% [kuang_water,kuang_food] = MinerConsume(Length,data2,data); %%计算挖矿的消耗
% [mwater,mfood] = RoadConsume(Length,data+1,data+3); %%计算村庄到终点的物资消耗
% if (Second_water*3+Second_food*2+kuang_water*3+kuang_food*2+mwater*3+mfood*2>=1200)
% Second_Em = m - 1 - data2
% break;
% end
% end
% for data = data2:1:m - 1
% m = data
% [kuang_water,kuang_food] = MinerConsume(Length,data2,data); %%计算挖矿的消耗
% [mwater,mfood] = RoadConsume(Length,data+1,data+3); %%计算村庄到终点的物资消耗
% end
% Secondsumwater = Secondsumwater + Second_water + kuang_water + mwater;
% Secondsumfood = Secondsumfood + Second_food + kuang_food + mfood;
% SumSecond_Em = SumSecond_Em + Second_Em;
% end
%
% %%
% %%通过多次累加求解得到平均值,以得到一般解
% water = sumwater/2000
% food = sumfood/2000
% Em = SumEm /2000
% First_water = Sum_first_water/2000
% First_food = Sum_first_food/2000
% Second_water= Secondsumwater/2000
% Second_food = Secondsumfood/2000
% Second_Em = SumSecond_Em/2000
% %%
% %%求出最红的资金
% walletmoney = 10000 + fix(Em) * 1000 - ceil(water) * 5 - ceil(food) * 10 - ceil(First_water)*10 -ceil(First_food)*20 + fix(Second_Em) * 1000 - ceil(Second_water) * 10 - ceil(Second_food) * 20
%
% %first
% %%资金
% % walletmoney =
% %
% % 13580
% %%时间
% %T = 7 + 8 + 3 = 18
%
% %second
% %%%资金
% % walletmoney =
% %
% % 14795
% %%时间
% %T = 7 + 8 + 2 + 2 + 6 + 3 =28
评论1