dimanche 30 avril 2017

Mines Ponts Informatique 2017

Mines Ponts 2017 Informatique Solution Proposé Par brahim BAKKAS

Partie I. Préliminaires

Dans un premier temps, on considère le cas d’une seule file, illustré
par la Figure 1(a). Une file de longueur n est représentée par n cases.
Une case peut contenir au plus une voiture. Les voitures présentes dans
une file circulent toutes dans la même direction (sens des indices
croissants, désigné par les flèches sur la Figure 1(a)) et sont
inditèrenciées.
  • Q1 – Expliquer comment représenter une file de voitures à l’aide
    d’une liste de booléens.
pour représenter le file de voiture à l’aide d’une liste, on va mettre True dans la i ème case (si voiture occupe l’emplacement i), sinon False.
  • Q2 – Donner une ou plusieurs instructions Python permettant de
    définir une liste A représentant la file de voitures illustrée par la
    Figure 1(a).
#Q2 Sol1
L= [False]*11
L[0],L[2:4],L[-1]=True,[True,True],True
#Q2 Sol2
L= [False]*11
pos=(0,2,3,-1)
for i in pos:
    L[i]=True
  • Q3 Soit L une liste représentant une file de longueur n et i un
    entier tel que 0 <= i < n. Définir en Python la fonction occupe(L, i)
    qui renvoie True lorsque la case d’indice i de la file est occupée
    par une voiture et False sinon.
def occupe(L,i):
    return L[i]==True
  • Q4 – Combien existe-t-il de files diferentes de longueur n ?
    Justifier votre réponse
le nombre de solution est $2^n $ filles possible, parce que pour chaque
posisition on a deux cas soit occupé ou non avec n emplacement 2 * 2 *
2 * 2 *2 =