Для каждого из 13 рядов таблицы результатов Yahtzee вам дается (из stdin) разделенный пробелами список из 5 чисел (кубик). Ваша задача - подсчитать количество очков для каждой строки и вывести общий итог игры.
пример
Ввод и как его интерпретировать:
Input Box Score
6 1 4 1 3 Aces 2
3 2 2 1 2 Twos 6
6 3 2 3 3 Threes 9
4 2 3 6 5 Fours 4
6 3 5 5 1 Fives 10
1 5 6 5 6 Sixes 12
Bonus -
4 2 4 4 1 3 of a kind 15
2 2 3 2 4 4 of a kind -
3 2 2 2 3 Full house 25
1 3 1 6 1 Small straight -
2 5 4 6 3 Large straight 40
2 2 2 2 2 Yahtzee 50
5 5 4 5 2 Chance 21
Grand Total 194
Мы будем игнорировать правила Yahtzee Bonus и Joker, и суммируем только баллы из верхней и нижней секций и Bonus в верхней секции. Если вы сомневаетесь, обратитесь к этим правилам .
Пусть победит самый короткий код!
Ответы:
APL (124)
источник
R - 264
(264 символа при исключении комментариев)
С входом
Выход
источник
2 2 2 2 2
и считаю, что ваша программа рассматривает это как фулл-хаус и присуждает 25 очков.2 2 2 2 2
), я получаю результатnumeric(0)
вместо оценки.2 2 2 2 2
) в разделе "Полный дом". Я думаю, что вы правы насчет стритов, спасибо; Я обновлю свой код более короткой версией, о которой я думал.Python 364
В соответствии с запросом, ввод на стандартный ввод:
Если бы данные могли быть предварительно загружены в список, как это сделали некоторые другие решения, я мог бы удалить 62 символа, чтобы получить 302.
источник
Mathematica 359
Должен быть более эффективный способ проверки короткой прямой.
источник
GolfScript 180
Вы можете протестировать программу здесь
Аннотированная программа:
источник
Perl 527 символов
источник