Vous êtes un jeune chef talentueux à qui on vient de proposer le poste de sous-chef dans le restaurant indien le plus prestigieux au monde. Vous avez peu d'expérience dans la préparation de la cuisine indienne, mais vous êtes déterminé, alors vous vous efforcez de faire vos preuves. Vous décidez de devenir le principal expert de dosa . Pour ce faire, vous devez non seulement maîtriser la création de dosas, mais vous devez également pouvoir les dimensionner pour qu'ils soient arbitrairement volumineux.
Vous trouvez une recette prometteuse pour la pâte dosa:
- 1 tasse de riz
- 1 tasse de ukda chawal
- 1/2 tasse de dal
- 1/4 tasse de poha
- 1/4 cuillère à café de graines de methi
- Sel au goût
- De l'eau au besoin
Cela fera un dosa d'environ 1/2 mètre de long.
Défi
Ecrivez un programme ou une fonction qui indiquera au personnel du restaurant exactement ce qui est nécessaire pour créer un dosa unique à partir d’un multiple entier de la recette donnée . L'espace est restreint dans la cuisine, vous voulez donc que votre code soit le plus court possible. Le code le plus court gagne, les liens revenant au message précédent.
Les cuillères à mesurer et les tasses sont disponibles dans les formats standard suivants: 1/4, 1/3, 1/2, 2/3, 3/4 et 1. Pour éviter de mettre en colère le personnel de la cuisine, les mesures doivent être consignées dans l' unité la plus grande du pays. lequel le nombre peut être écrit sous forme de nombres mélangés en utilisant uniquement des tailles standard .
Les mesures se propagent à de plus grandes tailles selon la convention suivante:
- 3 c. À thé == 1 c. À table
- 4 c. À table == 1/4 tasse
Donc, pour un multiple de 12, 1/4 c. À thé de graines de méthi devient 1 c. Cependant, pour un multiple de 13, il devient 3 1/4 c. Sinon, il ne serait pas représenté dans les tailles standard.
Les serveurs doivent pouvoir porter le dosa sur les tables. Pour vous assurer que le dosa ne casse pas en transit, vous leur demandez de transporter le dosa en équipes. Chaque personne peut porter au plus un mètre de dosa. Donc, pour une recette simple ou double, une seule personne suffit pour la porter. Le personnel d’attente est moins efficace s’il est découpé en fractions, de sorte qu’il faut toujours un nombre entier de serveurs .
Contribution
Prenez un entier positif via STDIN (ou l'alternative la plus proche), un argument de ligne de commande ou un argument de fonction. Ce nombre détermine le facteur de mise à l'échelle de la recette et peut être aussi petit que 1 mais pas plus grand que 2 32 -1. Ce peut être n'importe quel entier dans cette plage.
Sortie
Imprimez sur STDOUT (ou l’alternative la plus proche) la liste des ingrédients mis à l’échelle en fonction de l’entrée, ainsi que le nombre de serveurs requis pour porter le dosa. Les ingrédients doivent être énumérés dans l'ordre indiqué ci-dessus et dans le format indiqué ci-dessous.
Exemples
Contribution:
2
Sortie:
2 cups rice
2 cups ukda chawal
1 cup urad dal
1/2 cup poha
1/2 tsp methi seeds
Salt to taste
Water as needed
1 waiter
Notez que "tasse" devient "tasse" lorsque la valeur est supérieure à 1. "tsp" ne change pas. "serveur", comme "tasse", devient pluriel.
Contribution:
5
Sortie:
5 cups rice
5 cups ukda chawal
2 1/2 cups urad dal
1 1/4 cups poha
1 1/4 tsp methi seeds
Salt to taste
Water as needed
3 waiters
Les valeurs non entières supérieures à 1 sont représentées par des nombres mélangés, c'est-à-dire un entier suivi d'une fraction réduite.
Remarque: le titre provient d' une vidéo pertinente .