Visual illustration of the code challenge: +3 Days ! Introduction

+3 Days ! Introduction

Tu décides d’analyser un fichier contenant une semaine complète de données…

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

Mission

Ce challenge est issu de l’histoire originale Naya +3 days !

Naya hésite une seconde. Ce n’est pas “dans sa todo”. Mais quelque chose l’accroche : si on lit ces données correctement, on peut arrêter de parler d’optimisation à l’intuition et commencer à chiffrer des gains concrets.

Dans l’export, un tableau frictions liste les petits grains de sable du quotidien avec, à chaque fois, les secondes perdues.

Individuellement, c’est peu. Mais à l’échelle d’une ville, ça peut représenter beaucoup.

Ton rôle : aider Naya à repérer ce qui pèse vraiment, estimer ce qu’on gagnerait en réduisant les frictions les plus coûteuses, et sortir quelques chiffres qui donnent envie d’aller plus loin. Un déclic, pas encore une solution.

Règles

Tu as à ta disposition un tableau frictions.

Chaque élément de ce tableau porte 2 informations, séparées par un « : »

  • Le type de friction lors d’un trajet
  • La durée en secondes perdues liée à cette friction

Ton objectif est de déterminer combien de temps on pourrait gagner si on réduisait les frictions les plus importantes de 50%.

Pour cela, tu dois :

  • Regrouper les frictions par type, il en existe 5 :
    • red_light : feux rouges
    • transfer : correspondances de transport
    • parking : recherche de parking
    • detour : détours à cause de travaux
    • crowd : foule/affluence
  • Pour chaque type tu dois identifier les 3 frictions qui ont la durée la plus grande
  • Déterminer le gain potentiel, pour chaque type, si on réduisait ces 3 valeurs de 50%
    • Formule : gain = (somme des 3 plus grandes valeurs) × 0.5

Comme il y a 5 types de frictions, tu vas calculer 5 gains potentiels.

Tu dois alors retourner ces 5 gains dans l’ordre décroissant, séparés par des « ; »

Exemple de sortie : 225;100;30;20;15

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: THREEDAYS_0

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: Tableaux, Calculs

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
CodeMind #2 : Relaxation

CodeMind #2 : Relaxation

Challenge 2 de CodeMind : Développe un outil de relaxation et bien-être étudiant avec PHP, JavaScript ou Python. Transforme le stress en zénitude !

Calculation
Beginner
L’explorateur de l’espace #1

L’explorateur de l’espace #1

Tes satellites te permettent de recueillir des informations aux confins des univers connus… Mais comment vas-tu traiter tout ça ?

Calculation