30

Moumou :
Ben comment font les gens pour assigner une difficulté à leurs grilles, alors ?

Ils cherchent l'ensemble de transformations "le plus simple" pour arriver à résoudre la grille, et disent que la difficulté de la grille est la difficulté de cet ensemble ?

Et justement ce que je dis, c'est qu'il n'y a aucune grille qui ait une "difficulté infinie", i.e. qui n'ait aucun ensemble de transformations qui permette de la résoudre, ou autrement dit, où "on est obligé de mettre un chiffre au hasard pour continuer" ou qui "dépende du hasard", comme tu dis ^^

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

31

oui oui je suis bien d'accord mais ce que je dis c'est qu'aucun humain n'a une « puissance de calculs infinie » non plus.

enfin de toute façon si on est d'accord qu'on peut assigner une difficulté à une grille de sudoku, on est aussi donc d'accord que le problème de la création d'un générateur de grilles de sudoku est plus compliqué que simplement générer une grille au hasard.
avatar
I'm on a boat motherfucker, don't you ever forget

32

euh, rien que le fait de générer une grille au hasard, si on veut le faire de façon équiprobable, ça doit pas être évident du tout ^^
Moumou :
oui oui je suis bien d'accord mais ce que je dis c'est qu'aucun humain n'a une « puissance de calculs infinie » non plus.

ben, oui, il peut y avoir des grilles très difficiles, mais pourquoi est-ce qu'elles seraient "inintéressantes" ?

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

33

Pollux
: euh, rien que le fait de générer une grille au hasard, si on veut le faire de façon équiprobable, ça doit pas être évident du tout ^^


j'entendais, générer une grille avec des algorithmes naïfs consistant à prendre n'importe quelle grille résolue et y mettre des trous sans trop réfléchir.
Pollux
:
Moumou
: oui oui je suis bien d'accord mais ce que je dis c'est qu'aucun humain n'a une « puissance de calculs infinie » non plus.
ben, oui, il peut y avoir des grilles très difficiles, mais pourquoi est-ce qu'elles seraient "inintéressantes" ?

ok je retire ce que j'ai dit happy
avatar
I'm on a boat motherfucker, don't you ever forget

34

J'ai fait un truc en Prolog aussi (sans utiliser la programmation par contrainte par contre), et on peut voir que même les sudoku assez difficiles se résolvent en grande partie avec deux méthodes toutes simples : (http://sudoku.fr.free.fr)
- élimination simple : dans une case, il ne reste qu'un seul candidat, parce que tous les autres chiffres sont sur la même ligne, colonne ou région
- candidat unique : dans une ligne, colonne ou région, un candidat est présent dans une seule des cases.

En utilisant rien que ces deux techniques, le nombre d'hypothèses faites devient largement raisonnable et là tu peux faire une récurrence sans avoir trop de profondeur. Pour exemple, j'ai pris un sudoku "diabolique" sur www.webdusoku.com et j'ai lancé mon programme : http://www.mirari.info/get.php?c=kQq3
Et résoudre et générer un sudoku, c'est un peu pareil dans ces cas-là, tu remplis le maximum en utilisant ces deux méthodes, et tu choisis un nombre aléatoirement ensuite. Dans mon cas, je remplis la première case non-résolue que je rencontre, avec le plus petit candidat possible, mais pour faire ça bien, vaut mieux rajouter du hasard.
Et pour régler la difficulté, à mon avis il faut juste limiter les techniques que tu utilises, un sudoku facile utilisera presque que des éliminations simples, avec peut-être un ou deux candidats uniques, et au fur-et-à-mesure que la difficulté augmente il faudra utiliser des méthodes un poil plus compliquée (genre un duo de candidats).
Par contre, je pense qu'en utilisant ces techniques pour générer, en essayant de résoudre le sudoku, on peut se retrouver avec un sudoku plus simple que prévu, par exemple si le chiffre choisi aléatoirement aide grandement à la résolution, la technique avancée ne sera pas utilisée au final dans la résolution. Dans ce cas-là, le calcul de la difficulté se fait plutôt une fois la grille générée.
avatar
;)

35

Moumou :
j'entendais, générer une grille avec des algorithmes naïfs consistant à prendre n'importe quelle grille résolue et y mettre des trous sans trop réfléchir.

oui j'avais bien compris happy je voulais juste dire que si on voulait pas faire ça n'importe comment (i.e. en ne privilégiant pas certaines classes de grilles), c'était nettement plus délicat...

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

36

si ca t'interesse voila ma methode pour generer des grilles,
c bourin, ca met 3000 essais avant de faire une grille mais ca la genere en 30ms
par contre à la fin les cases cachées sont affectees + ou - au hazard...

http://procvor.free.fr/sudaucul.cpp
http://procvor.free.fr/sudaucul.exe
et la le mec il le pécho par le bras et il lui dit '

37

you are not allowed to copy grind genered

mwarf c'est quoi cette licence de merde ? ^^
avatar
I'm on a boat motherfucker, don't you ever forget

38

bah pas sur un magazine ou autre ^^
apres si tu veut te les copier sur papier pour y jouer pas de prblm lol
et la le mec il le pécho par le bras et il lui dit '

39

BiHi :
J'ai fait un truc en Prolog aussi (sans utiliser la programmation par contrainte par contre), et on peut voir que même les sudoku assez difficiles se résolvent en grande partie avec deux méthodes toutes simples : (http://sudoku.fr.free.fr)
- élimination simple : dans une case, il ne reste qu'un seul candidat, parce que tous les autres chiffres sont sur la même ligne, colonne ou région
- candidat unique : dans une ligne, colonne ou région, un candidat est présent dans une seule des cases.

En utilisant rien que ces deux techniques, le nombre d'hypothèses faites devient largement raisonnable et là tu peux faire une récurrence sans avoir trop de profondeur. Pour exemple, j'ai pris un sudoku "diabolique" sur www.webdusoku.com et j'ai lancé mon programme : http://www.mirari.info/get.php?c=kQq3
Et résoudre et générer un sudoku, c'est un peu pareil dans ces cas-là, tu remplis le maximum en utilisant ces deux méthodes, et tu choisis un nombre aléatoirement ensuite. Dans mon cas, je remplis la première case non-résolue que je rencontre, avec le plus petit candidat possible, mais pour faire ça bien, vaut mieux rajouter du hasard.
Et pour régler la difficulté, à mon avis il faut juste limiter les techniques que tu utilises, un sudoku facile utilisera presque que des éliminations simples, avec peut-être un ou deux candidats uniques, et au fur-et-à-mesure que la difficulté augmente il faudra utiliser des méthodes un poil plus compliquée (genre un duo de candidats).
Par contre, je pense qu'en utilisant ces techniques pour générer, en essayant de résoudre le sudoku, on peut se retrouver avec un sudoku plus simple que prévu, par exemple si le chiffre choisi aléatoirement aide grandement à la résolution, la technique avancée ne sera pas utilisée au final dans la résolution. Dans ce cas-là, le calcul de la difficulté se fait plutôt une fois la grille générée.


ui enfin ton exemple prouve que ta méthode est super lente parce qu'avec mon programme ta grille est résolue en 4 ms soit 50 fois plus vite tongue
Pour une grille comme ça ok mais pour la grille vide ça doit ramer ^^

(d'autre part l'exemple que tu prends a plusieurs solutions ; il backtrack pour les énumérer ton prog ou pas ?)
avatar
I'm on a boat motherfucker, don't you ever forget

40

r043v :
si ca t'interesse voila ma methode pour generer des grilles,
c bourin, ca met 3000 essais avant de faire une grille mais ca la genere en 30ms
par contre à la fin les cases cachées sont affectees ou - au hazard...

http://procvor.free.fr/sudaucul.cpp
http://procvor.free.fr/sudaucul.exe


Comment tu fais pour savoir quelles cases tu peux cacher ? Car mon problème est surtout la ! J'ai lu un peu la source mais elle est dure à lire^^
Visitez mon site : http://www.bobti89.fr.st
Testez mon forum ici

41

bah c pas le top comme je defini les cases cachees..

déjà j'essai de repartir equitablement le nombre de cases devoilees par carre de 9

			do {	value = rand()%6; // how many block to unmask ?
					ok=1; // don't fill with some less or many block
					if( !value && ++nnot>2) ok=0;
					if(value>3 && ++nmany>2)ok=0;
					if(value<3 && ++nless>2)ok=0;
			} while(!ok);


style la il y aura max 2 carres vides, 2 carres de moins de 3
et 2 de plus de 3 (cad 4 ou 5), le reste aura 3 cases devoilees

apres pour chaque cases a devoiler, visiblement (longtemps que g code ca..),
je matte si le mm chiffre a ete devoile ds la ligne ou colonne
(en fait c tres con ca je viens de me rendre compte cheeky )
ue donc au final, en fait c au hazard apres lol grin

ton algo recursif devrais bien mieux marcher
et la le mec il le pécho par le bras et il lui dit '

42

En fait, j'ai un peu réfléchi au probleme et je me dis qu'on pourrait construire (ca revient peut etre aux programmes prolog) un arbre dont les arcs seraient les contraintes, et il s'agit de là un simple probleme d'ordonnancement. Je n'ai pas beaucoup eu le temps de réfléchir à quel point les algorithmes sont "adaptables".

Et finalement la solution que je propose c'est: acheter un livret "sudoku en vacances" et copier les grilles en dur.
Tout ce qui passe pas par le port 80, c'est de la triche.

43

onur :
En fait, j'ai un peu réfléchi au probleme et je me dis qu'on pourrait construire (ca revient peut etre aux programmes prolog) un arbre dont les arcs seraient les contraintes, et il s'agit de là un simple probleme d'ordonnancement. Je n'ai pas beaucoup eu le temps de réfléchir à quel point les algorithmes sont "adaptables".

Ben, oui c'est pareil... (enfin je vois pas trop ce que tu veux dire par ordonnancement, en tout cas c'est un coloriage de graphe)
Sauf que c'est toujours NP-complet, donc ça peut être parfois plus adapté parce que le problème est décrit de façon plus générique, parfois moins adapté parce qu'on ne tient pas compte de certaines spécificités du problème ^^

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

44

r043v :
bah c pas le top comme je defini les cases cachees..

déjà j'essai de repartir equitablement le nombre de cases devoilees par carre de 9

Sauf que si on regarde les "sudoku" officiels (enfin ceux qu'on trouve dans les magazines dont 99% sont généré par informatique via (nottement) le soft du gars qui a fait (re)sortir le sudoku dans un grand journal anglophone la répartition des trous dans les carré n'est pas forcement equitable, loin de la.. (et quelque soit le niveau de difficultée)
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

45

toutes les grilles de nikoli (qui ont lancé le sudoku au japon dans les années 80) sont faites à la main
les grilles du guardian en angleterre aussi
avatar
I'm on a boat motherfucker, don't you ever forget

46

Pollux :
Sauf que c'est toujours NP-complet, donc ça peut être parfois plus adapté parce que le problème est décrit de façon plus générique, parfois moins adapté parce qu'on ne tient pas compte de certaines spécificités du problème ^^

Bah si tu bosses avec une metaheuristique, y'a pas de raison que tu ne puisses pas integre tes specificites...

47

la répartition des trous dans les carré n'est pas forcement equitable, loin de la.. (et quelque soit le niveau de difficultée)


bah en meme temps, je connaissait pas le jeux, g juste vu des grilles ds var matin et j'en ai fait un generateur..

dailleur j'ai vu un jeux ds le mm style que le sudoku ds var matin, c sur une grille de meme taille ac encore les chiffres de 1 a 9
certaines cases sont separees en 2 et possedent la somme des chiffres de la colonne et/ou ligne associé.
comme le sudoku on ne peut pas avoir le meme chifre 2 fois sur la mm ligne colonne

c bien plus dur que le sudoku je trouve, mais on prend vite le coup
et la le mec il le pécho par le bras et il lui dit '

48

kakuro ?
si c ca, c pas plus dur que le sudoku... c juste une approche un peu differente...

49

oui c ca smile

je le trouve plus dur pour commencer la grille
apres c limite plus simple, faut juste notter qq part comment faire les somme ac 2 chiffres
et la le mec il le pécho par le bras et il lui dit '

50

nEUrOO
:
Pollux :
Sauf que c'est toujours NP-complet, donc ça peut être parfois plus adapté parce que le problème est décrit de façon plus générique, parfois moins adapté parce qu'on ne tient pas compte de certaines spécificités du problème ^^

Bah si tu bosses avec une metaheuristique, y'a pas de raison que tu ne puisses pas integre tes specificites...

Et en français ça donne quoi ? cheeky

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

51

Que dans les schema de resolutions des problemes generiques (metaheuristiques) tu peux tjrs integre ce que tu veux...

52

Euh, ça dépend de l'algorithme : si ton truc de résolution générique manipule par exemple des sous-ensembles quelconque du graphe généré à partir de la grille de sudoku, je ne vois pas vraiment comment tu pourrais te mettre à exploiter les particularités de la grille, tu es un peu obligé d'expliciter le graphe en question et tes structures de données seront obligatoirement en O(taille_structure_générique), alors qu'un autre algorithme pourrait avoir des structures de données plus adaptées au problème du sudoku...

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

53

LionelA a écrit :
j'ai pas tout lu mais je crois avoir compris que pour generer la grille du départ tu fais ca aléatoirement, ca doit etre super long

je viens de retrouver ca sur tigen :

on part de cette solution

123456789
456789123
789123456
234567891
567891234
891234567
345678912
678912345
912345678

et on swap 2 à 2 lignes et colonnes en considerant seulement des blocs de 3 lignes ou colonnes (par exemple la 1ere ligne ne pourra jamais swapper avec une autre ligne que la 2nde ou la 3eme)

ca devrait deja aller plus vite smile
Sauf que là, tu génères des grilles remplies, ce qui n'est pas du tout ce que l'on demande !!!
Tout l'art de la génération de grille consiste à retirer le plus de chiffres possibles tout en tombant, après résolution, sur une solution unique, la grille pleine dont tu es parti wink.
Mais il semblerait qu'en fait, les grilles faites à la main sont construites dans l'autre sens : on choisit toutes les cases qui seront remplies au début, et ensuite on y place des chiffres fleche une piste pour le programme ?
À noter que la société Nikoli, qui a importé ce jeu au Japon (et ouais, ça vient en fait des États-Unis !) et propriétaire du nom Sudoku (et ouais, c'est un nom déposé !) a ajouté 2 contraintes sur les grilles qu'elle publie : maximum 30 cases remplies au départ, et symétrie de ces cases (pour l'esthétisme happy).
Sally a écrit :
Si la solution est unique, je ne comprends pas comment tu peux être obligé de mettre un chiffre au hasard confus
Et pourtant, ça existe !
Plus exactement, à un moment, tu te retrouves coincé avec aucune possibilité de continuer de manière sûre.
Tu choisis alors une case où il n'y a que 2 candidats (chiffres possibles), tu la remplis avec un des deux chiffres choisi au hasard (méthode de l'hypothèse) et tu continues la grille sur cette base : si tu arrives au bout (éventuellement en faisant d'autres hypothèses ailleurs), comme tu sais que la solution est unique, c'est gagné, et sinon, tu reviens à la dernière hypothèse faite (backtracking) et tu choisis finalement l'autre candidat.
Après, il y a des grilles où tu as, lorsque tu coinces, plusieurs cases à hypothèse (== 2 candidats) : si tu as du bol, tu commences par la case qui permet (directement ou avec juste un backtracking sur cette case) de trouver la solution, et sinon, tu es obligé de faire N hypothèses (soit au pire 2N arbres à explorer).
Moumou a écrit : Ben comment font les gens pour assigner une difficulté à leurs grilles, alors ?
Il existe de nombreuses 'techniques' plus ou moins simples à mettre en œuvre du premier coup d'œil (certaines n'étant que des cas particuliers d'autres techniques), et la notation de difficulté se base sur les techniques nécessaires à la résolution.
Ainsi, selon ma notation :[ul][li]une grille n'utilisant que les techniques de 'case forcé' (== 'singulet caché') et de 'chiffre forcé' (== 'singulet franc') sera simple
[li]une grille nécessitant en plus des 'doublets francs' et de la 'compression' (ça, c'est un nom de mon cru tongue : les noms d'interaction ligne-bloc ou d'interaction bloc-bloc, je trouve ça moche cheeky) sera moyenne
[li]s'il faut en plus des 'doublets cachés' et des 'triplets francs', elle sera difficile
[li]au-delà (triplets cachés, quadruplets francs et cachés et autres techniques aux noms exotiques), c'est une grille diabolique (catégorie un peu fourre-tout, je trouve)[/ul]
paire franche / paires cachées
avatar
Je ne suis pas développeur Java : je suis artiste Java.
Ce que l’on conçoit bien s’énonce clairement, / Et le code pour l’écrire arrive aisément.
Hâtez-vous lentement ; toujours, avec méthode, / Vingt fois dans l’IDE travaillez votre code.
La perfection est atteinte, non pas lorsqu’il n’y a plus rien à ajouter, mais lorsqu’il n’y a plus rien à retirer.
You don't use science to show that you're right, you use science to become right.

54

Apriori non le hazard n'est JAMAIS de mise dans un sudoku, sinon c'est que la grille est mal faite...
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

55

Ethaniel :
Et pourtant, ça existe ! Plus exactement, à un moment, tu te retrouves coincé avec aucune possibilité de continuer de manière sûre.

Non, lis le topic.

(ou alors tu m'as l'air d'être en bonne voie pour montrer que P != NP = EXP happy)

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

56

Godzil :
Apriori non le hazard n'est JAMAIS de mise dans un sudoku, sinon c'est que la grille est mal faite...

Exactement.
Mais il ne faut pas confondre la methode de resolution avec ce que tu es oblige de faire.
Etre oblige de mettre un chiffre au hasard n'est pas bon, alors que si tu generes un arbres avec les chiffres aleatoires dans les cases, pkoi pas.

57

Pollux a écrit :
Ethaniel :
Et pourtant, ça existe ! Plus exactement, à un moment, tu te retrouves coincé avec aucune possibilité de continuer de manière sûre.

Non, lis le topic.

(ou alors tu m'as l'air d'être en bonne voie pour montrer que P != NP = EXP happy)
On ne doit pas penser à la même chose.
Allons-y donc pour un exemple concret...

Soit une grille que l'on cherche à résoudre d'une manière ou d'une autre.
Soit une case vide, ses 9 candidats sont les chiffres de 1 à 9.
Essayons de voir si le 1 convient : ah ben non, il y a déjà un 1 dans la même ligne.
Essayons de voir si le 2 convient : ah ben non, il y a déjà un 2 dans la même colonne.
Essayons de voir si le 3 convient : ah ben non, il y a déjà un 3 dans la même région.
[...]
Essayons de voir si le 7 convient : apparemment, rien ne l'interdit directement.
[...]
Finalement, seul le 7 convient, donc c'est un 7 dans cette case fleche détermination directe d'un chiffre par élimination des autres candidats.

Continuons la résolution, beaucoup plus loin...
Soit une case vide, et on a déjà éliminé 7 candidats, restent le 1 et le 3.
On cherche on cherche on cherche, mais pas moyen de décider quel chiffre est le bon (et c'est de ça que je parle).
Essayons de voir si le 1 convient en l'inscrivant et en continuant la résolution : ah ben non, 14 cases remplies plus loin, on a une situation impossible, deux fois le même chiffre dans la même ligne.
Essayons de voir si le 3 convient en l'inscrivant et en continuant la résolution : apparemment, on arrive à résoudre la grille jusqu'au bout.
Finalement, seul le 3 convient, donc c'est un 3 dans cette case fleche détermination backtrackée d'un chiffre par élimination des autres candidats (élimination indirecte du 1, directe des autres).

La détermination backtrackée n'est pas moins logique que la détermination directe, c'est simplement moins esthétique.
D'ailleurs, beaucoup de solveurs programmés à l'arrache font du brute backtracking : on met un 1 dans la toute première case, si c'est bon on passe à la deuxième case où on met aussi un 1, mais comme ça ne marche pas on backtracke et on met un 2 à la place, etc.
L'hypothèse nécessaire autorisant le backtracking est que la solution d'une grille est unique.

Et quand on est obligé de backtracker, ce n'est pas que la grille est mal faite, au contraire, c'est qu'elle est de niveau supérieure au sien, puisqu'aucune technique que l'on connaît n'y vient à bout, alors que, si ça se trouve, dans notre exemple, un coup de squirmbag (oui oui, cette technique existe vraiment oui) permettait de voir immédiatement que le 1 n'était pas un candidat possible, et donc que seul reste le 3...
Et s'il y a une grille sur laquelle même toutes les techniques connues de par le monde se cassent les dents, c'est peut-être (je dis bien peut-être) qu'il existe une toute nouvelle technique que personne n'a encore trouvée tongue !
avatar
Je ne suis pas développeur Java : je suis artiste Java.
Ce que l’on conçoit bien s’énonce clairement, / Et le code pour l’écrire arrive aisément.
Hâtez-vous lentement ; toujours, avec méthode, / Vingt fois dans l’IDE travaillez votre code.
La perfection est atteinte, non pas lorsqu’il n’y a plus rien à ajouter, mais lorsqu’il n’y a plus rien à retirer.
You don't use science to show that you're right, you use science to become right.

58

oui ça j'avais bien compris mais effectivement on ne parle pas de la même chose... je disais que je ne vois pas pourquoi (ie il n'est pas prouvé que) dans certains cas tu serais *obligé* de faire une hypothèse (ie qu'il n'existe pas de méthode (connue ou inconnue) permettant de déterminer le résultat sans faire d'hypothèse)

En d'autres termes, je veux dire que si ça se trouve quand tu es "obligé" de mettre un chiffre au hasard c'est juste que t'es mauvais et en fait t'es pas vraiment "obligé". Sinon (je dévie un peu de la question ^^) la méthode de l'hypothèse à le défaut de ne pas prouver que la solution est unique, justement (on fait confiance au concepteur, ok, mais moralement c'est pas très satisfaisant). Enfin sauf si tu explores tout l'arbre, évidemment, mais bon s'il est grand... couic. C'est pour ça je pense que Moumou disait qu'un algorithme qui donnerait des grilles insolubles autrement que par ce moyen ne serait pas super, mais je ne vois toujours pas pourquoi ça existerait hehe
avatar
« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#

59

[cross, je répondais à Ethaniel]
oui enfin je pense que ce que sally voulait dire par le fait qu'on est jamais "obligé de" mettre un chiffre au hasard, c'est justement qu'on peut toujours trouver une technique qui fait qu'on n'est pas obligé de faire ce type de supposition ^^

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

60

Je me répète : « Et pourtant, ça existe ! »
Dans le topic « J'aime pas », vers la période de décembre, j'ai mis une grille bien completée, mais pas entièrement parce que ça bloque.
Je l'ai passée dans quelques solveurs automatiques qui disent utiliser toutes les techniques connues, et aucun n'y a réussi, on est "obligé" de faire une hypothèse pour avancer.
Et encore une fois, je me répète, et c'est exactement ce qu'à dit Sally, mais une grille qui "oblige" quelqu'un à hypothétiser est une grille de trop haut niveau pour le joueur au vu des techniques qu'il connaît, donc si tu es "obligé", c'est que tu es "mauvais".
Le seul truc, c'est qu'il existe des grilles où, apparemment, l'intégralité des techniques connues à l'heure actuelle de par ce vaste monde ne permet cependant pas de se passer d'un backtracking.
En voici un exemple trouvé aujourd'hui (il y en a d'autres du même acabit sur ce forum), donc Sally, toi qui doutes de l'existence de telles grilles, vas-y, fais-toi plaisir et appliques toutes les méthodes que tu pourras trouver dans des bouquins ou sur Internet (voici d'ailleurs une liste apparemment complète de toutes les techniques répertoriées) jusqu'à ce que soit tu découvres quelle est ZE technique qu'il fallait pour ne pas backtracker (mais vu le niveau de certains joueurs du forum, je doute légèrement hehe), soit tu admettes leur existence tongue...

Bon, j'ai mis de l'italique, du souligné, du gras et de l'emphase stylistique : ça suffit comme ça ou j'en rajoute encore une couche ?
C'est exactement comme en maths où des problèmes considérés comme insolubles à un moment donné par l'intégralité des mathématiciens de la planète sont du jour au lendemain simplement résolus grâce à un tout nouveau théorème mathématique venant juste d'être découvert wink...
avatar
Je ne suis pas développeur Java : je suis artiste Java.
Ce que l’on conçoit bien s’énonce clairement, / Et le code pour l’écrire arrive aisément.
Hâtez-vous lentement ; toujours, avec méthode, / Vingt fois dans l’IDE travaillez votre code.
La perfection est atteinte, non pas lorsqu’il n’y a plus rien à ajouter, mais lorsqu’il n’y a plus rien à retirer.
You don't use science to show that you're right, you use science to become right.