NewbieContest

Challenges => Aide Programmation => Discussion démarrée par: S0410N3 le 01 Mars 2013 à 21:25:26



Titre: Prog - Résolution de sudoku
Posté par: S0410N3 le 01 Mars 2013 à 21:25:26
Postez ici vos messages.


Titre: Re : Prog - Résolution de sudoku
Posté par: Nepharian le 05 Mars 2013 à 15:31:25
Bonjour bonjour  =)

Quand je lis "La chaîne sera constituée de la suite des numéros par ligne, séparés par le tiret", je comprend que la chaine doit être de le forme suivante : 1-2-3-4-5-6-7-8-9-11-12-13-14-15-16-17-18-19...

Je n'arrivais cependant pas à valider l'épreuve avec un résultat correct, le format de la chaine correct serait-il 123456789-123456789-... par hasard?  =D

Ainsi la déscription du format devrait peut-être se transformer en :

"La chaîne sera constituée de la suite des numéros par ligne, séparées par le tiret"


Titre: Re : Prog - Résolution de sudoku
Posté par: flob le 05 Mars 2013 à 15:37:20
Salutation,

Effectivement l'énoncé n'est pas très clair à ce sujet.

La chaine à retourner est sous la forme suivante : xxxxxxxxx-xxxxxxxxx-.....

:)


Titre: Re : Prog - Résolution de sudoku
Posté par: Nepharian le 05 Mars 2013 à 15:39:08
Merci flob. Pardon pour l'édit, tu étais trop rapide pour moi.  :wink:


Titre: Re : Prog - Résolution de sudoku
Posté par: wait le 22 Mai 2013 à 14:10:20
L'épreuve n'est-elle pas buguée ?

Je résous le sudoku à l'aide d'un programme qui marche (testé avec des grilles corrigées), je mets la réponse sous la bonne forme (solution=123456789-123456789-... pour l'exemple) mais ça me dit que la chaîne n'est pas bonne ...


Titre: Re : Re : Prog - Résolution de sudoku
Posté par: JLuc69 le 22 Mai 2013 à 15:33:07
L'épreuve n'est-elle pas buguée ?

Je résous le sudoku à l'aide d'un programme qui marche (testé avec des grilles corrigées), je mets la réponse sous la bonne forme (solution=123456789-123456789-... pour l'exemple) mais ça me dit que la chaîne n'est pas bonne ...
Si ça te dis que c'est pas bon ....  ;)
Vérifie que tu envois bien les lignes dans le bon ordre .... et que tu n'as pas d'espace dans la chaine


Titre: Re : Re : Re : Prog - Résolution de sudoku
Posté par: wait le 22 Mai 2013 à 21:20:05
Si ça te dis que c'est pas bon ....  ;)
Vérifie que tu envois bien les lignes dans le bon ordre .... et que tu n'as pas d'espace dans la chaine

Oui ça je sais bien, mais le hic c'est que je suis sûr. Le programme de résolution est bon, le script de récupération/envoie de page aussi, j'observe même sous Wireshark pour être sur et je vois bien :

Code:
http://www.newbiecontest.org/epreuves/prog/verifprsudoku.php?solution=123456789-321654987-123456789-blablabla-blablabla-blabla

De plus, j'envoie bien les lignes dans le bon ordre . solution=1ere ligne-2e ligne-3e ligne-....-....-
Je ne vois pas  :rolleyes:


Titre: Re : Prog - Résolution de sudoku
Posté par: JLuc69 le 23 Mai 2013 à 05:53:30
C'est étonnant!
Citation
Dernière validation par LoopString, le 22/05/2013 à 21:57
Doit y avoir un truc qui passe mal dans ta soluce, copie/colle moi ce que tu envois en mp :/


Titre: Re : Prog - Résolution de sudoku
Posté par: wait le 23 Mai 2013 à 07:07:01
Je viens de trouver le fameux FAIL ! Cela provient de la "grille" que j'envoie à mon programme, elle n'est pas correcte  :lol:

Merci quand même JLuc !


Titre: Re : Prog - Résolution de sudoku
Posté par: chépou le 23 Mai 2013 à 10:06:43
Bonjour,
J'aurais aimé savoir avec quel outil on récupère la grille et envoie la solution?

Je résout mon sudoku par un programme C. Pour l’instant j'utilise mon "parser" sur un copié-coller de la page php où est la grille, puis je voulais envoyer la réponse avec wget...

Merki!


Titre: Re : Re : Prog - Résolution de sudoku
Posté par: JLuc69 le 23 Mai 2013 à 16:02:40
Bonjour,
J'aurais aimé savoir avec quel outil on récupère la grille et envoie la solution?

Je résout mon sudoku par un programme C. Pour l’instant j'utilise mon "parser" sur un copié-coller de la page php où est la grille, puis je voulais envoyer la réponse avec wget...

Merki!
Fais déjà les premières prog pour comprendre comment tout ceci se passe  =D


Titre: Re : Prog - Résolution de sudoku
Posté par: sandelan le 16 Juillet 2013 à 12:32:07
Je viens à l'instant de valider. :D
Et je suis obligé de remercier le concepteur !!!
Super challenge, j'ai pris mon pied.
J'ai tout fait en Python...


Titre: Re : Re : Prog - Résolution de sudoku
Posté par: JLuc69 le 20 Juillet 2013 à 11:19:15
Je viens à l'instant de valider. :D
Et je suis obligé de remercier le concepteur !!!
Super challenge, j'ai pris mon pied.
J'ai tout fait en Python...

Félicitations  ;)


Titre: Re : Prog - Résolution de sudoku
Posté par: philippe_ le 15 Août 2013 à 12:19:05
Enfin! J'ai vraiment eu un mal de chien :)
J'ai également tout fait en python, il faut être méga rigoureux, et je dois l'avouer, mon script ne fonctionne qu'une fois sur quatre à peut prêt :P


Titre: Re : Prog - Résolution de sudoku
Posté par: titoum76 le 30 Août 2013 à 18:38:19
Résolu aujourd'hui en PHP, les points donné par cette épreuve risque malheureusement de baisser rapidement  =|


Titre: Re : Re : Prog - Résolution de sudoku
Posté par: JLuc69 le 30 Août 2013 à 18:48:36
Résolu aujourd'hui en PHP, les points donné par cette épreuve risque malheureusement de baisser rapidement  =|
Là n'est pas l’intérêt ;) Les épreuves sont données pour apprendre, pas pour être le premier !

As tu 100% de réussite ? Moi, non (94%) L’intérêt est d'améliorer ton prog pour :
1 - qu'il fasse du 100%
2 - qu'il aille plus vite

Et il en faut aussi pour tous les niveaux : des simples, des dures et des galères (pourvu qu'il n'y en ai pas des "infaisables"  =D )


Titre: Re : Prog - Résolution de sudoku
Posté par: titoum76 le 30 Août 2013 à 19:08:49
Ouep tu as raison ;)
Juste j'ai une épreuve de logique à proposer, sais-tu si je l'envoie à l'adresse email de newbiecontest, celle-ci sera accepté ? Car les administrateurs ont l'air un peu mort.


Titre: Re : Re : Prog - Résolution de sudoku
Posté par: JLuc69 le 31 Août 2013 à 07:30:57
Ouep tu as raison ;)
Juste j'ai une épreuve de logique à proposer, sais-tu si je l'envoie à l'adresse email de newbiecontest, celle-ci sera accepté ? Car les administrateurs ont l'air un peu mort.
Envois et patiente : "tout vient à point à qui sait attendre" - Rabelais


Titre: Re : Prog - Résolution de sudoku
Posté par: BaTuC le 20 Janvier 2014 à 20:49:35
Arf j'arrive tres bien a résoudre le sudoku mais en 8 secs ..
Cela viend de ma machine ou alors du faite que je fasse ca en Java ?
Que me conseillez vous ?

Php ?


Titre: Re : Prog - Résolution de sudoku
Posté par: the lsd le 21 Janvier 2014 à 09:40:53
Entre la peste et le choléra hein...

Après, on ne peut pas te répondre comme ça. Ça dépend bien sur de ta machine, du langage, mais aussi de ta version du compilo/interpreteur/jvm, et du code que tu as fait. S'il est pas optimisé, c'est normal que ce soit long.

Pour info, : http://benchmarksgame.alioth.debian.org/u64q/benchmark.php?test=all&lang=java&lang2=php&data=u64q

Enjoy

The lsd


Titre: Re : Prog - Résolution de sudoku
Posté par: BaTuC le 21 Janvier 2014 à 13:59:50
Je pense que la longueur de mon code est du a la bibliotheque Selenium que j'utilise pour piloter mon nav ..
Je le tente en bash .. Je vais devoir reprendre mes vieux cours de Awk :)


Titre: Re : Prog - Résolution de sudoku
Posté par: the lsd le 21 Janvier 2014 à 14:32:21
ah ben oui là forcément, si tu te bases sur sélénium, c'est normal que ça soit long. Tu te tapes la vm java, plus l’interprétation de selenium, plus les requêtes. C'pas choquant du tout.

Enjoy

The lsd


Titre: Re : Prog - Résolution de sudoku
Posté par: BaTuC le 21 Janvier 2014 à 22:11:34
un bon vieuxx netcat et du sed et j'arrive a recuperer la grille :)
j'avoue avoir été un bon fénéant et j'essaye d'utiliser un solveur externe .. marche pas trop pour l'instant  :)


Titre: Re : Prog - Résolution de sudoku
Posté par: lodoos le 06 Mars 2014 à 22:29:12
Résolu à l'aide de java, comme les autres épreuves c'est le temps de login qui est long. La majorités des grilles se résolves vite (moins de 100ms sur un pc portable et core i5).

Si vous voulez tester un grille spécial brut-force:

{0,0,0 ,0,0,0 ,0,0,0}
{0,0,0 ,0,0,3 ,0,8,5}
{0,0,1 ,0,2,0 ,0,0,0}

{0,0,0 ,5,0,7 ,0,0,0}
{0,0,4 ,0,0,0 ,1,0,0}
{0,9,0 ,0,0,0 ,0,0,0}

{5,0,0 ,0,0,0 ,0,7,3}
{0,0,2 ,0,1,0 ,0,0,0}
{0,0,0 ,0,4,0 ,0,0,9}

je met 8s a la résoudre celle la! (oui java c'est "lent" :lol:)


Titre: Re : Prog - Résolution de sudoku
Posté par: Akabane le 16 Juin 2014 à 21:04:11
Bonjour,

J'aimerai savoir ce qui se passe lorsqu'on donne la mauvaise réponse...
 - Message d'erreur du genre ==> naaaan, c'est pas bon, recommence !
 - Rien du tout (page blanche)

Car lorsque j'essaye de valider cette épreuve, je n'ai rien du tout... page blanche...

C'est parce que j'envoie la mauvaise solution ?
L'épreuve bug ? (dernière validation il y a une semaine...)

Merci d'avance.


Titre: Re : Prog - Résolution de sudoku
Posté par: sandelan le 16 Juin 2014 à 21:16:24
Je viens de le refaire à l'instant, tout fonctionne normalement.
Pas de bug !



Titre: Re : Prog - Résolution de sudoku
Posté par: Akabane le 16 Juin 2014 à 21:28:20
Arf....
Merci pour ta réponse rapide !
Je m'y remet.......


Titre: Re : Prog - Résolution de sudoku
Posté par: tdorand le 23 Octobre 2018 à 15:49:02
Bonjour,
J'essaie de résoudre ton problème mais même en soumettant une solution qui est correcte j'ai la même erreur:

Code:
Parsed sudoku: ( 81 )  000045000020000006806209100704000000500704003000000401009408507600000080000390000
Solution:  391645728-425871936-876239145-714983652-562714893-983526471-239468517-647152389-158397264
Correction:  <h3 align="center">D&eacute;sol&eacute;..</h3><br /><p>Ce n'est pas la chaine attendue... Retente ta chance.</p>

Parsed sudoku: ( 81 )  000045000020000006806209100704000000500704003000000401009408507600000080000390000
Solution:  391645728-425871936-876239145-714983652-562714893-983526471-239468517-647152389-158397264
Correction:  <h3 align="center">D&eacute;sol&eacute;..</h3><br /><p>Ce n'est pas la chaine attendue... Retente ta chance.</p>

Vous avez une idée ?



Titre: Re : Re : Prog - Résolution de sudoku
Posté par: JLuc69 le 23 Octobre 2018 à 16:07:02
Bonjour,
J'essaie de résoudre ton problème mais même en soumettant une solution qui est correcte j'ai la même erreur:

"Parsed sudoku: ( 81 )  000045000020000006806209100704000000500704003000000401009408507600000080000390000
Solution:  391645728-425871936-876239145-714983652-562714893-983526471-239468517-647152389-158397264
Correction:  <h3 align="center">D&eacute;sol&eacute;..</h3><br /><p>Ce n'est pas la chaine attendue... Retente ta chance.</p>

Parsed sudoku: ( 81 )  000045000020000006806209100704000000500704003000000401009408507600000080000390000
Solution:  391645728-425871936-876239145-714983652-562714893-983526471-239468517-647152389-158397264
Correction:  <h3 align="center">D&eacute;sol&eacute;..</h3><br /><p>Ce n'est pas la chaine attendue... Retente ta chance.</p>
"
Vous avez une idée ?


Étonnant, sur ta première solution, tu as l'air bon
Mais est ce que ça correspond à la grille envoyée ? Sauvegardes ce que tu reçois et compares avec le résultat envoyé


Titre: Re : Prog - Résolution de sudoku
Posté par: tdorand le 24 Octobre 2018 à 13:35:56
Oui ça correspond à la grille envoyé
Code:
[[15:32:39.505]] [LOG]    Sudoku html reçu  : <style>
 .chiffe{
color: #000000;
font-size: 20px;
font-weight: bold;
font-family : Verdana, Geneva, Arial, Helvetica, sans2serif;
width:40px;
height:40px;
text-align: center;
border : 1px solid #CDCDCD;
}
.chiffe1{
  color: #ffffff;
font-size: 20px;
font-weight: bold;
font-family : Verdana, Geneva, Arial, Helvetica, sans2serif;
width:40px;
height:40px;
text-align: center;
border : 1px solid #CDCDCD;
}
table.sudoku {
border : 1px solid #000000;
}
</style>

<table cellspacing="0" cellpadding="0">
  <tr>
    <td>
      <table cellspacing="0" cellpadding="0" class="sudoku">
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe">4</td>
          <td class="chiffe1">0</td>
        </tr>
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
        </tr>
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
          <td class="chiffe">5</td>
        </tr>
      </table>
    </td>
    <td>
      <table cellspacing="0" cellpadding="0" class="sudoku">
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
        </tr>
        <tr>
          <td class="chiffe">5</td>
          <td class="chiffe">7</td>
          <td class="chiffe1">0</td>
        </tr
        ><tr>
          <td class="chiffe1">0</td>
          <td class="chiffe">2</td>
          <td class="chiffe1">0</td>
        </tr>
      </table>
    </td>
    <td>
      <table cellspacing="0" cellpadding="0" class="sudoku">
        <tr>
          <td class="chiffe">1</td>
          <td class="chiffe1">0</td>
          <td class="chiffe">2</td>
        </tr>
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
          <td class="chiffe">6</td>
          </tr>
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe">7</td>
          <td class="chiffe1">0</td>
        </tr>
      </table>
    </td>
  </tr>
  <tr>
    <td>
      <table cellspacing="0" cellpadding="0" class="sudoku">
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
          <td class="chiffe">8</td>
        </tr>
        <tr>
          <td class="chiffe">5</td>
          <td class="chiffe">3</td>
          <td class="chiffe1">0</td>
        </tr>
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
        </tr>
      </table>
    </td>
    <td>
      <table cellspacing="0" cellpadding="0" class="sudoku">
        <tr>
          <td class="chiffe">9</td>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
        </tr>
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
        </tr>
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
          <td class="chiffe">2</td>
        </tr>
      </table>
    </td>
    <td>
      <table cellspacing="0" cellpadding="0" class="sudoku">
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
        </tr>
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe">9</td>
          <td class="chiffe">8</td>
        </tr>
        <tr>
          <td class="chiffe">5</td>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
        </tr>
      </table>
    </td>
  </tr>
  <tr>
    <td>
      <table cellspacing="0" cellpadding="0" class="sudoku">
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe">8</td>
          <td class="chiffe1">0</td>
        </tr>
        <tr>
          <td class="chiffe">4</td>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
        </tr>
        <tr>
          <td class="chiffe">7</td>
          <td class="chiffe1">0</td>
          <td class="chiffe">3</td>
        </tr>
      </table>
    </td>
    <td>
      <table cellspacing="0" cellpadding="0" class="sudoku">
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe">9</td>
          <td class="chiffe1">0</td>
        </tr>
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe">6</td>
          <td class="chiffe">8</td>
        </tr>
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
        </tr>
      </table>
    </td>
    <td>
      <table cellspacing="0" cellpadding="0" class="sudoku">
        <tr>
          <td class="chiffe">3</td>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
        </tr>
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
          <td class="chiffe1">0</td>
        </tr>
        <tr>
          <td class="chiffe1">0</td>
          <td class="chiffe">4</td>
          <td class="chiffe1">0</td>
        </tr>
      </table>
    </td>
  </tr>
</table>

[[15:32:39.506]] [LOG]    Sudoku parsé reçu        : 040000005-000570020-102006070-008530000-900000002-000098500-080400703-090068000-300000040
[[15:32:39.506]] [LOG]    Solution résolu renvoyé : 647123985-839574126-152986374-218537469-975641832-463298517-586412793-794368251-321759648
[[15:32:39.551]] [LOG]    Réponse de newbiecontest:  <h3 align="center">D&eacute;sol&eacute;..</h3><br /><p>Ce n'est pas la chaine attendue... Retente ta chance.</p>

C'est étrange, je vais essayer de trouver un autre script pour résoudre le sudoku, je le résout en node js.
Merci !


Titre: Re : Prog - Résolution de sudoku
Posté par: Orikalc le 27 Octobre 2018 à 22:45:52
Je viens de la valider donc je peux confirmer qu'elle fonctionne toujours (fait en Python)


Titre: Re : Prog - Résolution de sudoku
Posté par: Jos le 14 Février 2023 à 10:43:00
Résolu a l'instant en kotlin :)
Merci pour l'épreuve c'était fun