找回密码
 欢迎注册
楼主: chyanog

[提问] WWWDOT - GOOGLE = DOTCOM

[复制链接]
发表于 2013-3-3 10:45:33 | 显示全部楼层
10# chyanog 这个容易解释。 这个Mathematica应该是用通用算法解出来的,具体应该就是线性规划。 如果你还加了互不相等的条件的话,那么这个线性规划的约束条件 一下子就多了C(9,2) =36个不等式,加上原先的9个(或者10个), 就是46个。 一个是10个方程的线性规划, 一个是46个方程的线性规划, 应该高下立判了吧
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2013-3-3 10:58:11 | 显示全部楼层
11# wayne 加了互不相等的条件,Mathematica的AAS(算法自动选择) 不一定仍然使用线性规划算法。 在找不到匹配算法的时候, Mathematica只能brute force了
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2013-3-3 11:18:12 | 显示全部楼层
基于hujunhua的代码, 我稍稍做了改动,经过漫长的等待,Mathematica终于解出答案了, 发现Mathematica好容易被骗哦,
  1. f = FromDigits;(*函数名缩写*)v = {c, d, e, g, l, m, o, t, w};
  2. x = {w, w, w, d, o, t};
  3. y = {g, o, o, g, l, e};
  4. z = {d, o, t, c, o, m};
  5. solv = Solve[f[x] == f[y] + f[z] + Sin[wayne]^2 && wayne == 0 && And @@ (0 <= # <= 9 & /@ v), Flatten[{v, wayne}], Integers];
  6. sele = Select[solv, Length[Union[v /. #]] == 9 &];
  7. f /@ {x, y, z} /. sele
复制代码
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2013-3-3 16:04:21 | 显示全部楼层
11# wayne Oh,知道了
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2013-3-7 16:40:03 | 显示全部楼层
Solve有些时候很慢,记得仿真论坛有过一道题,用Solve似乎就不适合
用1到9这九个数不重不漏组成等式( )/( )( )+( )/( )( )+( )/( )( )=1
  1. Compile[{}, Module[{a, b, c, d, e, f, g, h, i},
  2. Do[{a, b, c, d, e, f, g, h, i} = x;
  3. If[a < d < g && a/(10 b + c) + d/(10 e + f) + g/(10 h + i) == 1,
  4. Print@x], {x, Permutations@Range@9}]]][] // Timing
复制代码
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-11-23 20:14 , Processed in 0.027322 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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