摘要: 火星人购物使用钻石链,每颗钻石都有一定的价值。付款是,要求从钻石链上找到所有刚好能匹配到商品价值的连续的钻石子链,如果没有, 则找到超过商品价值的最小的钻石子链。比如钻石链为3 2 1 5 4 6 8 7,商品价值为15,则候选的方案有:第 4 到第 6 颗的子链5 4 6,第 7 到第 8 颗:8 7。输入为一个钻石链以及商品的价值,要求找到所有满足条件的分割方案,按起始点从小到大排序输出。 解题思路:比较简单, 从起始点每个点开始依次向后遍历相加,直到相加值大于等于设定商品价值。若等于直接输出,若大于则将此次相加的起始位置和结束位置予以存储,并且保存此次值;当遍历完整后还是没有匹配方案,计 阅读全文
posted @ 2014-02-18 11:47 likelight 阅读(1390) 评论(0) 推荐(0) 编辑