Tout simplement en utilisant l'informatique pour résoudre le puzzle. Bon, évidemment, c'est moins drôle. Petit howto avec r-project.
Sous Ubuntu Karmic, ajoutez le dépôt
deb http : // cran.univ-lyon1.fr/bin/linux/ubuntu karmic/

aptitude update

aptitude install r-mathlib


Ensuite, récupérez la dernière version de la librairie R sudoku là:
cran.r-project.org/web/pa... (http)
Puis, installez-le:
R CMD INSTALL path/pkg_version.tar.gz


Dans un fichier texte, préparez votre grille
----2-691
---------
6-----37-
-6--5---4
1-3--6---
------2--
--1-4----
3------17
7----195-


Enfin, lancez le programme:
$ R

R version 2.10.1 (2009-12-14)
Copyright (C) 2009 The R Foundation for Statistical Computing
ISBN 3-900051-07-0

R est un logiciel libre livré sans AUCUNE GARANTIE.
Vous pouvez le redistribuer sous certaines conditions.
Tapez 'license()' ou 'licence()' pour plus de détails.

R est un projet collaboratif avec de nombreux contributeurs.
Tapez 'contributors()' pour plus d'information et
'citation()' pour la façon de le citer dans les publications.

Tapez 'demo()' pour des démonstrations, 'help()' pour l'aide
en ligne ou 'help.start()' pour obtenir l'aide au format HTML.
Tapez 'q()' pour quitter R.

> library(sudoku)
> s <- readSudoku("~/test_sudoku.txt")
> s
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9]
[1,] 0 0 0 0 2 0 6 9 1
[2,] 0 0 0 0 0 0 0 0 0
[3,] 6 0 0 0 0 0 3 7 0
[4,] 0 6 0 0 5 0 0 0 4
[5,] 1 0 3 0 0 6 0 0 0
[6,] 0 0 0 0 0 0 2 0 0
[7,] 0 0 1 0 4 0 0 0 0
[8,] 3 0 0 0 0 0 0 1 7
[9,] 7 0 0 0 0 1 9 5 0
> system.time(solveSudoku(s))
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9]
[1,] 8 3 7 5 2 4 6 9 1
[2,] 2 1 9 6 7 3 5 4 8
[3,] 6 5 4 8 1 9 3 7 2
[4,] 9 6 8 7 5 2 1 3 4
[5,] 1 2 3 4 9 6 7 8 5
[6,] 4 7 5 1 3 8 2 6 9
[7,] 5 9 1 3 4 7 8 2 6
[8,] 3 8 2 9 6 5 4 1 7
[9,] 7 4 6 2 8 1 9 5 3
utilisateur système écoulé
2.79 0.01 2.80
>q()


Et voilà ;-)