Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mars 2018
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : mars 2018
    Messages : 1
    Points : 1
    Points
    1

    Par défaut Problème du choix de manteau

    Bonjour , je suis entrain de faire les différents exercices de déblocage du niveau 4 de France IOI et je suis bloqué sur celui-ci:http://www.france-ioi.org/algo/task....71&idTask=2330 , je passe les premiers test mais après le retour est: Votre programme a dépassé la limite de temps : il est trop lent ou bien boucle indéfiniment. Je ne comprends pas pourquoi , si vous pouvez m'aider.

    Voici mon code :
    Code Python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    from math import *
    import sys
    def triselection(tab, nbd):
       for i in range(nbd):
          k = 0
          for j in range(nbd):
             if tab[k][0] < tab[j][0]:
                k = j
             tab[k], tab[j]= tab[j],tab[k]
     
    def triselection_des(tab, nbd):
       for i in range(nbd):
          k = 0
          for j in range(nbd):
             if tab[k][1] >  tab[j][1]:
                k = j
             tab[k], tab[j] = tab[j],tab[k]
     
    def amplitude(tab, nbd,maximum):
       i = 0
       while i in range(nbd):
          tab[i][4] = ( nbd - tab[i][2] - tab[i][3])
          if (maximum < tab[i][4]):
             maximum = tab[i][4]
          i = i + 1
       return(maximum)
     
    def rang_def_maxi(tab, nbd):
       rang = 0
       i = 1
       while i in range(nbd):
          if (tab[i][0]< tab[i - 1][0]):
             rang = i
          tab[i][3] = rang
          i = i + 1
     
    def rang_def(tab, nbd):
       rang = 0
       i = 1
       while i in range(nbd):
          if (tab[i][0] > tab[i- 1][0]):
             rang = i
          tab[i][2] = rang
          i = i + 1
     
     
    def main():
       nbd= int(input()) 
       tab = [[int(0) for i in range(5)] for c in range(nbd)]
       tab1 = [[int(0) for i in range(5)] for c in range(nbd)]
       for i in range(nbd):
          tab1[i] = sys.stdin.readline()
       for i in range(nbd):
          tab[i][0] = int(tab1[i][0])
          tab[i][1] = int(tab1[i][2])
       maximum = 0
       rang = 0
       triselection(tab,nbd)
       tab[0][2] = rang
       rang_def(tab,nbd)
       triselection_des(tab,nbd)
       tab[0][3] =rang
       rang_def_maxi(tab,nbd)
       maximum = amplitude(tab,nbd,maximum)
       sys.stdout.write(str(maximum - 1) + "\n")
     
     
     
    if __name__ == "__main__":
       main()

  2. #2
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    décembre 2013
    Messages
    2 484
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : décembre 2013
    Messages : 2 484
    Points : 5 330
    Points
    5 330

    Par défaut

    Si tu tapes 'algorithme manteau' dans la barre de recherche en haut à droite, tu vas tomber entre autre sur cette discussion : https://www.developpez.net/forums/d1...x-manteau-ioi/

    Je ne sais pas si ça peut t'aider, ou si tu tiens à comprendre pourquoi ton code ne marche pas. En toute première lecture, ton code me paraît relativement long. Et c'est toujours frustrant/difficile de devoir modifier un algorithme en enlevant purement et simplement des portions de code inutiles.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

Discussions similaires

  1. Problème du choix de manteau (IOI)
    Par Asphator dans le forum Algorithmes et structures de données
    Réponses: 15
    Dernier message: 14/03/2016, 09h57
  2. Problème de choix automatique
    Par -Space- dans le forum Access
    Réponses: 2
    Dernier message: 05/07/2006, 15h08
  3. Problème de choix
    Par Karim1971 dans le forum Outils
    Réponses: 5
    Dernier message: 12/05/2006, 23h47
  4. Problème de choix de page lors de l'impression
    Par Olaf MENJI dans le forum Windows
    Réponses: 2
    Dernier message: 22/11/2005, 10h51
  5. Problème de choix pour un graphique
    Par MeDioN dans le forum 2D
    Réponses: 2
    Dernier message: 10/10/2005, 10h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo