Echo, mascotte de l'équipe de Globalis, a découvert une fonction foo()
bien mystérieuse. Hélas, il n'a pas accès au code. Curieux et grand amateur de rétro-ingénierie, Echo s'est amusé à appeler cette fonction, en injectant des données en entrée et en récoltant les sorties. Le comportement de la fonction foo()
est le suivant :
Appel | Sortie |
---|---|
foo([[0, 3], [6, 10]]) |
[[0, 3], [6, 10]] |
foo([[0, 5], [3, 10]]) |
[[0, 10]] |
foo([[0, 5], [2, 4]]) |
[[0, 5]] |
foo([[7, 8], [3, 6], [2, 4]]) |
[[2, 6], [7, 8]] |
foo([[3, 6], [3, 4], [15, 20], [16, 17], [1, 4], [6, 10], [3, 6]]) |
[[1, 10], [15, 20]] |
Le challenge, si vous l'acceptez, serait d'aider Echo à comprendre ce que fait cette fonction et à la recoder. Vous êtes partant ? ;)
Expliquez, en quelques lignes, ce que fait cette fonction.
Codez cette fonction. Merci de fournir un fichier contenant :
- la fonction,
- l'appel de la fonction, avec un jeu de test en entrée,
- l'affichage du résultat en sortie.
Précisez en combien de temps vous avez implémenté cette fonction.
Par avance, un grand merci pour le temps que vous consacrerez à ce challenge, en espérant vous voir rejoindre très prochainement nos équipes ;)