TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Operator Algebra

5 点作者 iou将近 9 年前

1 comment

CarolineW将近 9 年前
Really crap code, but here&#x27;s my 5 minute solution:<p><pre><code> #!&#x2F;usr&#x2F;bin&#x2F;python from itertools import permutations vs = [ 1, 3, 4, 6 ] def run_tests( rtn, vs ): if len(vs) == 1: print rtn, &#x27;:&#x27;, vs[0] return run_tests( rtn+&#x27; +&#x27;, [ vs[0]+vs[1] ] + vs[2:] ) run_tests( rtn+&#x27; -&#x27;, [ vs[0]-vs[1] ] + vs[2:] ) run_tests( rtn+&#x27; r&#x27;, [-vs[0]+vs[1] ] + vs[2:] ) run_tests( rtn+&#x27; *&#x27;, [ vs[0]*vs[1] ] + vs[2:] ) if vs[1] != 0: run_tests( rtn+&#x27; &#x2F;&#x27;, [ float(vs[0])&#x2F;vs[1] ] + vs[2:] ) if vs[0] != 0: run_tests( rtn+&#x27; v&#x27;, [ float(vs[1])&#x2F;vs[0] ] + vs[2:] ) for p in permutations( vs ): rtn = `p` run_tests( rtn, list(p) ) </code></pre> Run this looking for the desired answer:<p><pre><code> .&#x2F;SolverHack.py | grep &quot; 24&quot; </code></pre> It produces:<p><pre><code> (3, 4, 1, 6) &#x2F; r v : 24.0 (4, 3, 1, 6) v r v : 24.0 </code></pre> As I say:<p>* crappy code,<p>* complete hack,<p>* done in 5 minutes,<p>* solves the problem.
评论 #12184691 未加载