八达网

标题: C++编程 [打印本页]

作者: outmylife    时间: 2013-12-25 14:55
标题: C++编程
写程序在1,2,…,9(保持这个顺序)之间可任意放+或-或都使其结果等于100,输出所有可能的放法。例如:1 + 2 + 3 – 4 + 5 + 6 + 78 + 9 = 100。
作者: outmylife    时间: 2013-12-25 14:57
期待大神出现
作者: 风剑    时间: 2013-12-25 15:29
这种挺麻烦的吧    这考的不是写代码的高手    考的是算法    问的应该是数学家而不是写代码的

    先问清弄数学的   列出怎么弄的方法   然后叫写代码的去编码
作者: 刁总书记    时间: 2013-12-25 15:39
穷举法  很easy   
作者: 刁总书记    时间: 2013-12-25 15:40
[发帖际遇]: IVAN为刁总书记 泡了一杯菊花茶,消费6 水晶.
作者: Nal_TonY    时间: 2013-12-25 15:46
穷举法撒!
作者: tangsa    时间: 2013-12-25 16:08
屌丝认为应该将可能出现的算式穷举出来,再把结果等于100的筛出来。。。
要扯到什么算法的,就只能匿了。。
作者: 蠕蠕    时间: 2013-12-25 16:13
1~9 之间8个空格,可以放+-空3种可能,才3^8次方
才几千种可能
穷举轻轻松松吧
作者: stonyfield    时间: 2013-12-25 17:06
确实用穷举法很轻松。
作者: BeRush    时间: 2013-12-25 17:18
用穷举法,但是现实中这样是没效率的
作者: 热啊    时间: 2013-12-25 18:16
这是数学,和编程关系不大
作者: 国妓米兰    时间: 2013-12-25 18:21

写程序在1,2,…,9(保持这个顺序)之间可任意放+或-或都使其结果等于100,输出所有可能的放法。例如:1 + 2 + 3 – 4 + 5 + 6 + 78 + 9 = 100。

既然是1~9的加减组合为什么会出现78?
穷举太暴力了,你把条件说清楚点,可以用动态规划的
作者: 国妓米兰    时间: 2013-12-25 18:40
本帖最后由 国妓米兰 于 2013-12-25 18:42 编辑

如果是你例子里的情况,中间可以十位数,但是个位要比十位数值大于一?






欢迎光临 八达网 (https://www.8-da.com/) Powered by Discuz! X2.5