SEND + MORE = MONEY: Difference between revisions
Content added Content deleted
(Added Wren) |
(→{{header|Wren}}: A bit simpler and quicker.) |
||
Line 82: | Line 82: | ||
var ors = [] |
var ors = [] |
||
var m = 1 |
var m = 1 |
||
var digits = (0..9).toList |
|||
digits.remove(m) |
|||
for (s in 2..9) { |
for (s in 2..9) { |
||
for (e in |
for (e in digits) { |
||
if ( |
if (e == s) continue |
||
for (n in |
for (n in digits) { |
||
if ( |
if (n == s || n == e) continue |
||
for (d in |
for (d in digits) { |
||
if (d == |
if (d == s || d == e || d == n) continue |
||
sends.add([s, e, n, d]) |
sends.add([s, e, n, d]) |
||
} |
} |
||
Line 94: | Line 96: | ||
} |
} |
||
} |
} |
||
for (o in |
for (o in digits) { |
||
for (r in digits) { |
|||
if (r == o) continue |
|||
if (r == m || r == o) continue |
|||
ors.add([o, r]) |
ors.add([o, r]) |
||
} |
} |
||
Line 106: | Line 107: | ||
for (or in ors) { |
for (or in ors) { |
||
if (send.contains(or[0]) || send.contains(or[1])) continue |
if (send.contains(or[0]) || send.contains(or[1])) continue |
||
var sendmore = send |
var sendmore = send + or |
||
var MORE = 1000 * m + 100 * or[0] + 10 * or[1] + send[1] |
var MORE = 1000 * m + 100 * or[0] + 10 * or[1] + send[1] |
||
for (y in |
for (y in digits) { |
||
if (sendmore.contains(y)) continue |
if (sendmore.contains(y)) continue |
||
var MONEY = 10000 * m + 1000 * or[0] + 100 * send[2] + 10 * send[1] + y |
var MONEY = 10000 * m + 1000 * or[0] + 100 * send[2] + 10 * send[1] + y |
||
Line 124: | Line 125: | ||
9567 + 1085 = 10652 |
9567 + 1085 = 10652 |
||
Took 0. |
Took 0.245213 seconds. |
||
</pre> |
</pre> |