华为普工面试题,这道题怎么解

2020-04-27 11:30:13 +08:00
 bilibiliCXK
36.请编写一个算法,使得等式成立。

1 2 3 4 5 6 7 8 = 1024
4241 次点击
所在节点    问与答
25 条回复
rrZ2C
2020-04-27 21:21:03 +08:00
binxin
2020-04-27 22:30:52 +08:00
1*2*(3-(4-(5*(6+7))))*8
binxin
2020-04-27 22:43:30 +08:00
@unidentifiedme 用后置表达式就可以不用括号了,总共有 117 种方法,搜索 14557317 次,也许还可以剪枝,不过目前卡在怎么把后置表达式换成人眼能看懂的中置。
hublot
2020-04-27 23:05:11 +08:00
1 * 2^((3 * 4) + (5 - 6 + 7 - 8)) =
1 * 2^(12 - 2) =
2^10
unidentifiedme
2020-04-29 12:31:24 +08:00
@binxin 括号并不影响搜索空间的大小

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/666537

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX