作者chrisdar (克里斯)
看板C_and_CPP
标题[问题] 数列分段的问题
时间Fri May 1 16:46:08 2009
现在有一数列与分段清况如下:
23,6,4,5,3,3,3,4,5,2,2,4,5,5,6,23,3,3,7,6,6,4,3,5,5,7,4,5,3,4,6,23,10
| 47/50 | 22/45 | 37/40 | 34/45 | 67/50 |
何谓 47/50 :该段数列总和47希望调整到50以内
有些原则需要遵守:
1. 不要更动数列的顺序
2. 满足各段数列总和均小於要求
举例:下面即是一个可行解
输入| 47/50 | 22/45 | 37/40 | 34/45 | 67/50 |
23,6,4,5,3,3,3,4,5,2,2,4,5,5,6,23,3,3,7,6,6,4,3,5,5,7,4,5,3,4,6,23,10
输出| 47/50 | 33/45 | 36/40 | 45/45 | 46/50 |
定义成本:输出入之间各段的数列个数差的总和
以例子来说 cost=0(第一段)+2(第二段)+0(第三段)+2(第四段)+4(第五段)=8
我们希望成本越小越好,这题目不知道该怎麽做?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 123.195.88.23
※ chrisdar:转录至看板 Prob_Solve 05/01 16:46
※ chrisdar:转录至看板 Programming 05/01 16:47
1F:→ MOONRAKER:这啥原则啊 你要再加一条「不可删除数字」吧 05/01 21:13
2F:→ MOONRAKER:不然我数字删一删不也达到要求 顺序不改变 05/01 21:13
3F:→ chrisdar:对喔 不可删除数字 05/01 21:14
4F:推 Fenikso:数列多大? 05/02 20:54
5F:→ chrisdar:谢谢以上的推文 最多数十万个 05/06 10:41