Tri à la Josèphe

Voilà une bien curieuse façon de trier les objets par couleur (qui ne trie en fait rien du tout). Le même processus est répété :

  • Mettre le premier ballon (le bleu) dans la pile du bas (image B)
  • Prendre les deux ballons suivants (jaunes) et les remettre en fin de file (image C)
  • Mettre le premier ballon dans la pile du milieu (image D)
  • Prendre les deux ballons suivants et les remettre en fin de file (image E)
  • Mettre le premier ballon dans la pile du haut (image F)
  • Prendre les deux ballons suivants et les remettre en fin de file (image G)
  • Reprendre à la première étape (image H et suivantes...)

Au bout d'un moment, on se retrouvera dans la situation de l'image R, juste après avoir mis un ballon dans la pile du haut. On sort alors deux nouveaux ballons, le jaune et le rouge, tandis que le nouveau premier de la file (bleu) va dans la pile du bas (image S). On sort à nouveau deux ballons (image T), et le suivant (le jaune qui vient de faire un tour complet) va dans la pile du mileu (image U). On sort un premier ballon (il n'en reste qu'un) qu'on replace en fin de file (images V et W). Puisqu'il faut sortir deux ballons, on recommence (et c'est le même qui refait un tour complet, sur les images X et Y). Puis on place un ballon dans la pile du haut (image Z).

Finalement, les ballons se retrouvent rangés par couleur.

On peut donc dire qu'avec une file de départ (image A) composée des couleurs BJJJJRRRBBBR (B est mis pour bleu, J pour jaune et R pour rouge) et en renvoyant à chaque fois 2 ballons en fin de file, la procédure précédente a pour effet de classer les ballons par couleur. Bien entendu, cette procédure ne fonctionne que parce que l'ordre des ballons au départ, qui semble aléatoire, a en fait été bien choisi.

Défi :

Dans quel ordre faut-il mettre 75 ballons, pour que, en appliquant la procédure précédente, mais en renvoyant entre chaque ballon trié 7 ballons en fin de file (au lieu de 2 dans l'exemple), les ballons soient finalement classés par couleur ? Les bleus en bas, les jaunes au milieu et les rouges en haut ? Vous devez donner une chaîne de caractères contenant 75 caractères B, J ou R

Testez votre code :

dans le cas de 12 ballons, si on en renvoyait 7 en fin de file à chaque fois, la réponse à donner serait BJJBRRBBJRRJ.

Ce problème est tiré de c0d1ng UP 2014

Type de retour

une chaîne de caractères

Entrée du problème

Pas de donnée d'entrée

Formulaire de réponse

Vous devez être connecté pour pouvoir répondre aux défis

Tags : cup14 décimation