Visual illustration of the code challenge: Le train va t-il arriver à l’heure ?

Le train va t-il arriver à l’heure ?

Analyse le trajet de ce train, il va rencontrer quelques obstacles… Arrivera t-il à l’heure ?

Coding in the sandbox You must be logged in to access the sandbox.

Mission

Un voyage en train, on le sait tous, n’est pas toujours un long fleuve tranquille. On sait normalement à quelle heure il part, mais pas toujours à quelle heure il arrive !

L’objectif est de déterminer la durée de voyage du train en fonction des évènements du trajet :

  • Arrêts dans des gares (jusque-là rien d’anormal)
  • Coupure(s) de courant
  • Incident(s) naturel(s) sur la voie

Règles

Le trajet est présenté sous cette forme : (dans la variable « events »)

T__N__P____N___T___T

Explications :

  • T signifie une gare (Train station)
  • Le trajet commence donc toujours par un T et finit toujours par un T
  • P signifie une coupure de courant (Power break)
  • N signifie un incident naturel sur la voie (Natural incident)
  • Un « _ » signifie que le train roule à pleine vitesse

Vitesses du train :

  • À pleine vitesse, le train roule à 200km/h.
  • À l’approche d’une gare, le train roule à 50km/h pendant 5km.
  • Au départ d’une gare, le train roule à 50km/h pendant 5km.
  • Lors d’une coupure de courant, le train roule à 5km/h pendant 10km.
  • Lors d’un incident naturel, le train roule à 10km/h pendant 5km.
  • On ne gère pas de notion d’accélération ou autre, il faut considérer que ce sont des moyennes sur les distances énoncées.

Le challenge renvoie également la distance totale à parcourir par le train, en km (dans la variable « distance »)

Tu dois retourner :

La durée totale, en secondes, du trajet complet du train.

Solve the challenge

To code this challenge, several possibilities:
- Want to start coding right away? Use the online Sandbox.
- Want to work in your favorite editor? Organize your code well, test, check out our API documentation.
- You can also copy/paste a dataset below.

challenge code for resolution via API: TRAIN_1

Some resources to help you:
Data and algorithmic logic Methodologies Corrections

Support for resolution

Progress through challenges using our resolution aids: tools, techniques and advice to help you overcome the most complex programming challenges with methodology, confidence and creativity.

Dataset and algorithmic logic

Based on the data and the expected response, use the process to determine the logic to implement.

Show data and progress

Methodologies

Develop a structured approach with our solving guides. Work on specific concepts such as object-oriented programming or unit testing to improve your coding style and progress.

No methodology yet for this challenge, but we are working on it! Follow us to be informed of the release!


Corrections

The corrections allow you to discover certain technical concepts but will also give you a solution to the challenge. Code the challenge yourself before consulting the corrections ;)

Programming concept(s) that can be used to solve this challenge: Programmation Orientée Objet, Fonctions, Parsing

Keep coding

Other challenges to complete

Beginner
#1 : Le grand saut

#1 : Le grand saut

Ada vient de tweeter son oeuvre et est tout de suite reprise par plusieurs comptes. On cherche à connaitre l’audience totale.

Calculation
Beginner
L’échelle de Scoville

L’échelle de Scoville

Prêt à concocter une sauce épicée pleine de saveurs ?

Calculation
Beginner
Survie sur une île déserte #1

Survie sur une île déserte #1

Tu es écrasé sur une île déserte… Qui va venir te secourir ?

Calculation Proposed methodology