Topcoder_3_152

【问题描述】
    有一些大理石台面,这些台面都是标准宽度和多种长度。要切割大理石台面是十分困难的事情,这需要特殊的机器才能将之切分,另外切分出的其中一块必须是k米长。
    现给定数组stock标明了这些大理石台面的长度,orders数组标明了客户要求的长度,k表示每次切分的单位,现在需要计算要满足客户的要求最少要切分多少次。
    注:交给客户的台面长度必须等于客户要求的长度,每次切分必须保证分成的2块中有一块的长度为k。

  定义:
类  MarbleTop
方法  public int minCuts(int k, int[] stock, int[] orders)

  约束:
1、k取值在1至40;
2、stock和orders在1至50个元素,其取值在1至40之间。

  测试用例:
1、5  {5,3,11}  {10,3,5}
Returns: -1
2、5  {5,3,11}  {6,6,5}
Returns: -1
3、1  {7,6,2,1}  {3,1,1,1,1,1,1}
Returns: 4

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值