24小时热门版块排行榜    

查看: 1745  |  回复: 13
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

ghw_nit

铁杆木虫 (正式写手)

[求助] 已经排好序的数组的求和问题

现有一个排好序的数组,假如这个数组有n个数,此时的排序是由大到小排列的,在这n个数中任取m个数加和,这种和有什么关系呢?
假如我取5个数,那么我可以肯定的说这个数组中前五个数的和是所有的五个数的组合中最大的拿一个,那么次大的是哪一个,是不是把第五个数去掉,换成第六个数就是次大的呢,第三大的是把第五个位置换成第七个数呢,这是我的猜测,不能证明,不知道我的猜测是不是对,能不能证明这件事呢。希望有人能指点一下。谢谢
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

龙文章

木虫 (正式写手)

【答案】应助回帖

引用回帖:
11楼: Originally posted by ghw_nit at 2013-06-08 20:46:48
对于每一个i1, i2, i3, ... , i(m) ,如果i值+1已在阵中,那么不继续考虑;如果i值+1不在阵中,那么找到d(i值)。然后比较所得的最多m个d(i值),找出最小的那个,对应的x(i值)就是要被替换的那个,把它换成x(i值+1), ...

比如说,现在拿到的m个数是
x1, x3, x4, x7;
也就是说此时数组 i 中是
i1 = 1, i2 = 3, i3 = 4, i4 = 7;
找下一组的话我们需要把某一个数替换为仅次于它的数,对应 i 的话就是+1变为
2, 4, 5, 8;
也就是说这四个数的下一个数分别是
x2, x4, x5, x8;
在 2,4,5,8中,4已在阵中,没有办法把x3变成x4,所以只看另外的三种变化,找出相应的
d1=x1-x2, d4=x4-x5,d7=x7-x8,找出最小的,然后替换就是在大小上仅次于目前拿到的(x1, x3, x4, x7)的下一组。
12楼2013-06-08 21:30:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 14 个回答

weft

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
话说, 这不是排序不等式的直接推论吗?
2楼2013-06-05 05:53:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pippi6

铁杆木虫 (著名写手)

工程和科学数值计算咨询

你的猜测成立应该是比较明显的,证明好像也就是个力气活吧
3楼2013-06-05 06:08:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ghw_nit

铁杆木虫 (正式写手)

是的,昨天有点晕了,现在已经向清楚了
4楼2013-06-05 07:54:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见