POPPUR爱换

 找回密码
 注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

搜索
查看: 4054|回复: 15
打印 上一主题 下一主题

借显卡区真心求助,工作中遇到问题了,数学题

[复制链接]
跳转到指定楼层
1#
发表于 2012-6-25 18:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 孤胆小鱼 于 2012-6-25 19:15 编辑

请版版帮帮忙不要删,工作中遇到大麻烦了,请数学好的同学帮忙,能算出来的有礼物赠送,聊表心意

附件内是一个表格文件。(之前表格打错了,现在表格正确的,对不起!)

有两A,D两列数字
D列每个数字是A列数字其中某几个的求和,A列数字不重复使用,A和D列数字各自求和后是一样的
现在需要知道A列中的5860000包含在D列的哪个数字里(D列小于5860000的数字可以不管的),并且D列的这个数字是由A列哪几个数字求和而成的
这能算出来吗?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
2#
发表于 2012-6-25 19:32 | 只看该作者
1。过滤D列中大于5860000
2。 过滤后的D列每单元,减去5860000
3。 减过的数字,在A列中查询
回复 支持 反对

使用道具 举报

3#
 楼主| 发表于 2012-6-25 19:39 | 只看该作者
nanshan 发表于 2012-6-25 19:32
1。过滤D列中大于5860000
2。 过滤后的D列每单元,减去5860000
3。 减过的数字,在A列中查询

是过滤小于5860000的吧
减去之后的数字,也可能是A列中好几个组成的啊

我连下班的心情都没有了
回复 支持 反对

使用道具 举报

4#
 楼主| 发表于 2012-6-25 20:13 | 只看该作者
先下班了,哎
哪位同学能帮忙算出来请PM下地址,我送份礼物给您
回复 支持 反对

使用道具 举报

5#
发表于 2012-6-25 20:43 | 只看该作者
建议到 Excelhome 的函数区求助。
回复 支持 反对

使用道具 举报

6#
发表于 2012-6-25 22:54 | 只看该作者
本帖最后由 samsunggram 于 2012-6-25 22:55 编辑

194837265
  5627384
   43765
     546
       ?


求问号里的值
回复 支持 反对

使用道具 举报

7#
发表于 2012-6-25 22:56 | 只看该作者
9163
9243
42822162
2363622162
提示:pair    推理出这组数字的意思
回复 支持 反对

使用道具 举报

8#
发表于 2012-6-25 23:07 | 只看该作者
本帖最后由 taian 于 2012-6-25 23:13 编辑

暂时想到一个很傻的办法:
把两列数据顺一下大小,对D列数字从小到大逐个规划求解,在下一个数字规划求解里面添加约束条件:前面的解所用到的A列数字为0"false",这样逐个做到最大为止。。。
由于比较花时间,我没有做下去。。。LZ如果实在想不出其他比较好的办法,可以用这个
回复 支持 反对

使用道具 举报

cctvgxtv 该用户已被删除
9#
发表于 2012-6-25 23:30 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

10#
发表于 2012-6-25 23:44 | 只看该作者
改进一下:
取消之前的约束条件
添加一列“校验列”,内容为对之前的解的可变单元区进行求和,然后加上约束条件:校验列小于等于1
这样可以避免在约束条件里面手动输入83个项这么麻烦
回复 支持 反对

使用道具 举报

11#
发表于 2012-6-26 00:24 来自手机 | 只看该作者
马克明天看看
回复 支持 反对

使用道具 举报

12#
发表于 2012-6-26 00:32 | 只看该作者
偶只能用笨方法, A数列从单个排序,然后两两相加,然后三三相加,直到所有相加,形成一个队列

然后D队列中大于5860000的数值,减去5860000,然后在上队列中查找
回复 支持 反对

使用道具 举报

13#
 楼主| 发表于 2012-6-26 00:32 | 只看该作者
感谢各位的回复了,发到excelhome论坛试试了。谢谢taian朋友,真心说你说的我也不太懂,还是感谢你!
明天挨骂是小,关键耽误了客户的货,还可能被有关部门怀疑,我心理压力好大
回复 支持 反对

使用道具 举报

14#
发表于 2012-6-26 00:49 | 只看该作者
本帖最后由 taian 于 2012-6-26 00:51 编辑

啊。。。按照这个办法到51000会出现不止一个解,这下麻烦了,天知道后面会不会多个解,改一下策略:

每一个D列数字对应一列变量0、1($E$2:$AD$84),共83个,其中每一个对应一个A列数字。每一列变量和对应数字A相乘求和(例如:C2=SUMPRODUCT(A2:A84,AD2:AD84)),得出对应的数字D

添加一列校验列,B:每一个校验值对所在行的变量进行求和(例如:B2=SUM(E2:AD2))

规划求解,添加约束条件:校验列所有值均为1;求和列C的值为对应D列数字的值;变量取值二进制。求解

.
..
...

天杀的excel居然“可变单元格过多”
于是咱投降了,求高手
回复 支持 反对

使用道具 举报

15#
发表于 2012-6-26 00:50 | 只看该作者
不太懂excel
编程的话用循环遍历很容易就可以实现了
回复 支持 反对

使用道具 举报

16#
发表于 2012-6-26 09:11 | 只看该作者
帮顶,有点不好下手
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

广告投放或合作|网站地图|处罚通告|

GMT+8, 2025-7-21 20:53

Powered by Discuz! X3.4

© 2001-2017 POPPUR.

快速回复 返回顶部 返回列表