       Re: Solve - takes very long time

• To: mathgroup at smc.vnet.net
• Subject: [mg121828] Re: Solve - takes very long time
• From: Heike Gramberg <heike.gramberg at gmail.com>
• Date: Tue, 4 Oct 2011 01:31:48 -0400 (EDT)
• Delivered-to: l-mathgroup@mail-archive0.wolfram.com
• References: <201110030821.EAA08778@smc.vnet.net>

```It's a bit of a brute force approach, but as an alternative you could
do something like this to find all the combinations

Needs["Combinatorica`"]
allsets = Map[{100, 10, 1}.# &, Partition[#, 3] & /@ Permutations, {2}];
triples = Cases[allsets, a_ /; (a[] < a[] && a[] + a[] == a[])]

This basically works by generating all triples of 3-digit numbers {a, b, c}
such that the triple contains each digit from 1 to 9 exactly once and then
choosing the ones such that a+b==c.

Heike.

On 3 Oct 2011, at 10:21, Fredob wrote:

> Hi,
>
> I tried the following on Mathematica 8 and it doesn't seem to stop
> running (waited 40 minutes on a 2.6 Ghz processor w 6 GB of primary
> memory).
>
> Solve[
> {100*Subscript[x, 2] + 10*Subscript[x, 1] + Subscript[x, 0] +
>    100*Subscript[y, 2] + 10*Subscript[y, 1] + Subscript[y, 0] ==
>   100*Subscript[z, 2] + 10*Subscript[z, 1] + Subscript[z, 0],
>   Subscript[x, 0] > 0, Subscript[y, 0] > 0, Subscript[z, 0] > 0,
>  Subscript[x, 1] > 0, Subscript[y, 1] > 0, Subscript[z, 1] > 0,
>  Subscript[x, 2] > 0, Subscript[y, 2] > 0, Subscript[z, 2] > 0,
>  Subscript[x, 0] <= 9, Subscript[y, 0] <= 9, Subscript[z, 0] <=
9,
>  Subscript[x, 1] <= 9, Subscript[y, 1] <= 9, Subscript[z, 1] <=
9,
>  Subscript[x, 2] <= 9, Subscript[y, 2] <= 9, Subscript[z, 2] <=
9,
>  Subscript[x, 0] != Subscript[y, 0] != Subscript[z, 0] !=
Subscript[
>   x, 1] != Subscript[y, 1] != Subscript[z, 1] != Subscript[x, 2]
!=
>   Subscript[y, 2] != Subscript[z, 2]},
> {Subscript[x, 2], Subscript[y, 2], Subscript[z, 2], Subscript[x, 1],
>  Subscript[y, 1], Subscript[z, 1], Subscript[x, 0], Subscript[y, 0],
>  Subscript[z, 0] },
> Integers]
>
> The problem was a homework for my daugther where you are supposed to
> use all digits to build - but only once - 2 three digit numbers and