Мне самому лень, я заставил компьютер считать вместо себя
(Оффтоп)
Код:
-- SQL код для Oracle
select n.n, e.e, v.v, a.a, u.u, r.r, l.l, o.o, g.g,
1000 * n.n + 100 * e.e + 10 * v.v + a.a neva,
1000 * u.u + 100 * r.r + 10 * a.a + l.l ural,
10000 * v.v + 1000 * o.o + 100 * l.l + 10 * g.g + a.a volga
from (select rownum - 1 n from dual connect by level <= 10) n,
(select rownum - 1 e from dual connect by level <= 10) e,
(select rownum - 1 v from dual connect by level <= 10) v,
(select rownum - 1 a from dual connect by level <= 10) a,
(select rownum - 1 u from dual connect by level <= 10) u,
(select rownum - 1 r from dual connect by level <= 10) r,
(select rownum - 1 l from dual connect by level <= 10) l,
(select rownum - 1 o from dual connect by level <= 10) o,
(select rownum - 1 g from dual connect by level <= 10) g
where n.n <> e.e
and v.v not in (n.n, e.e)
and a.a not in (n.n, e.e, v.v)
and u.u not in (n.n, e.e, v.v, a.a)
and r.r not in (n.n, e.e, v.v, a.a, u.u)
and l.l not in (n.n, e.e, v.v, a.a, u.u, r.r)
and o.o not in (n.n, e.e, v.v, a.a, u.u, r.r, l.l)
and g.g not in (n.n, e.e, v.v, a.a, u.u, r.r, l.l, o.o)
and 1000 * n.n + 100 * e.e + 10 * v.v + a.a + 1000 * u.u + 100 * r.r + 10 * a.a + l.l = 10000 * v.v + 1000 * o.o + 100 * l.l + 10 * g.g + a.a
Результат:
Код:
N E V A U R L O G NEVA URAL VOLGA
6 3 1 8 5 7 0 2 9 6318 5780 12098
7 4 1 8 5 6 0 3 9 7418 5680 13098
7 6 1 8 5 4 0 3 9 7618 5480 13098
6 7 1 8 5 3 0 2 9 6718 5380 12098
5 3 1 8 6 7 0 2 9 5318 6780 12098
5 7 1 8 6 3 0 2 9 5718 6380 12098
5 4 1 8 7 6 0 3 9 5418 7680 13098
5 6 1 8 7 4 0 3 9 5618 7480 13098
Итого у меня получилось 8 вариантов решения. Как я понимаю, это все возможные варианты (по крайней мере, запрос задумывался именно для поиска всех решений).