Enigme : les chemins tortueux
Répondre à la discussion
Affichage des résultats 1 à 10 sur 10

Enigme : les chemins tortueux



  1. #1
    invite06fcc10b

    Enigme : les chemins tortueux


    ------

    X***
    ****
    ****
    ***Y

    Question simple :
    Combien y a t-il de chemins possibles pour aller de X à Y en se déplaçant uniquement horizontalement ou verticalement de 1 case à la fois et sans jamais repasser par la même case ?
    Moins de 100 ?
    Plus de 100 ?
    Le nombre exact ?

    ps : mouvement en diagonal interdit et pas de tableau circulaire !

    -----

  2. #2
    yat

    Re : Enigme : les chemins tortueux

    A première vue, je dirais 184.

  3. #3
    invite06fcc10b

    Re : Enigme : les chemins tortueux

    Citation Envoyé par yat
    A première vue, je dirais 184.
    Moi, je dirais plus ... quoique, comment t"as fait ?

  4. #4
    invite06fcc10b

    Re : Enigme : les chemins tortueux

    Citation Envoyé par Argyre
    Moi, je dirais plus ... quoique, comment t"as fait ?
    Dis-donc Yat, je viens de vérifier par ordi, tu m'impressionnes là !

  5. A voir en vidéo sur Futura
  6. #5
    invite06fcc10b

    Re : Enigme : les chemins tortueux

    Citation Envoyé par Argyre
    Dis-donc Yat, je viens de vérifier par ordi, tu m'impressionnes là !
    Rien que pour Yat, j'ai une nouvelle énigme plus difficile :
    Même question avec n colonnes et n lignes, le départ en haut à gauche, l'arrivée en bas à droite, avec n variant entre 4 et 10 !

  7. #6
    yat

    Re : Enigme : les chemins tortueux

    Citation Envoyé par Argyre
    Moi, je dirais plus ... quoique, comment t"as fait ?
    Comme ça :
    Code:
    #include <stdio.h>
    
    char tab[4][4];
    int nbsol;
    
    void recurs(int i, int j) {
      tab[i][j]=1;
    
      if(i==3&&j==3) nbsol++;
      else {
        if(i>0&&tab[i-1][j]==0) recurs(i-1,j);
        if(j>0&&tab[i][j-1]==0) recurs(i,j-1);
        if(i<3&&tab[i+1][j]==0) recurs(i+1,j);
        if(j<3&&tab[i][j+1]==0) recurs(i,j+1);
      } //if
      tab[i][j]=0;
    } //recurs
    
    void main(void) {
      int i,j;
    
      for(i=0;i<4;i++) for(j=0;j<4;j++) tab[i][j]=0;
      nbsol=0;
      recurs(0,0);
      printf("%d\n",nbsol);
    } //main
    Un peu moins impressionné, maintenant, non ?

  8. #7
    invite06fcc10b

    Re : Enigme : les chemins tortueux

    Bien vu ! Tout en récursif, c'est effectivement rapide et efficace. Alors que moi j'ai utilisé un programme de je ne sais plus combien de lignes, qui peut tout faire ou presque mais qui n'est pas présentable ...

  9. #8
    yat

    Re : Enigme : les chemins tortueux

    Citation Envoyé par Argyre
    Rien que pour Yat, j'ai une nouvelle énigme plus difficile :
    Même question avec n colonnes et n lignes, le départ en haut à gauche, l'arrivée en bas à droite, avec n variant entre 4 et 10 !
    Alors pour n=5 : 8 512
    Pour n=6 : 126 2816

    Au delà, euh... j'ai peur que ça commence à être un peu compliqué...

  10. #9
    invite06fcc10b

    Re : Enigme : les chemins tortueux

    Citation Envoyé par yat
    Alors pour n=5 : 8 512
    Pour n=6 : 126 2816

    Au delà, euh... j'ai peur que ça commence à être un peu compliqué...
    Voilà ce qui arrive quand on fait du récursif, on aboutit à un stackoverflow ...
    Bon, je dis ça, mais mon programme n'a pas donné de réponse non plus, en tout cas pas encore ...

  11. #10
    yat

    Re : Enigme : les chemins tortueux

    Citation Envoyé par Argyre
    Voilà ce qui arrive quand on fait du récursif, on aboutit à un stackoverflow ...
    Pas encore, non... mais je peux pas trop laisser tourner des applis des heures sur ma machine, là...
    Il ne devrait pas y avoir de stack overflow, puisqu'il n'y aura que n² empilements de deux entiers... avec n=100 devrait pas y avoir de problème de ce coté là.

Discussions similaires

  1. Optique "fun" pour les esprits tortueux...
    Par invite5159a7b4 dans le forum Physique
    Réponses: 2
    Dernier message: 27/01/2007, 11h43
  2. Nombres de chemins différents possibles ?
    Par shokin dans le forum Mathématiques du collège et du lycée
    Réponses: 4
    Dernier message: 04/12/2006, 00h55
  3. Problèmes de chemins sous xp
    Par invite02e2524b dans le forum Électronique
    Réponses: 1
    Dernier message: 29/11/2006, 18h01
  4. Chemins de fer à 3 rails...
    Par invite0ac24513 dans le forum Technologies
    Réponses: 9
    Dernier message: 08/11/2005, 18h23
  5. chemins corrompus
    Par invite5ef698cd dans le forum Internet - Réseau - Sécurité générale
    Réponses: 8
    Dernier message: 08/11/2003, 21h56