VB.NET,实际应用:求最短残料。

有一根长度为321米的钢材料,要将它截取成两种规格a、b的长度分别为17米和27米的短料,每种至少 1 段,问分隔成 a,b 各多少段后,剩余的残料 r 最少?分析:该题利用“试凑法”通过二重循环求残料 r 的最小值(正数),残料不可能是负数。
Dim a%, b%, r!, ia%, ib%     
r = 321                                     ‘ 最小值初值取钢材料的长度
For b = 1 To 321 / 27                 ‘b最多的段数         
   For a = 1 To (321-b*27) / 17      ‘a最多的段数            
       t = 321 -b * 27 - a * 17              ‘ 当前的残料            
       If t > 0 And t < r Then                       
          r = t                                         ‘ 求最短的残料                   
         ia = a                                       ‘ 最短残料时a的段数                   
         ib = b                                       ‘ 最短残料时b的段数            
       End If            
    Next a   
Next b
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值