В английском языке существительные могут принимать две разные формы в зависимости от того, являются ли они единственными (одним) или множественным числом (что-либо еще). Например, мы бы сказали «1 собака», но «2 собаки», «0 собак», «57 собак» и так далее.
На русском языке есть три категории. Вместо «1 собака, 2 собаки, 5 собак» на русском языке это будет «1 собака, 2 собаки, 5 собак».
Категории делятся по следующей логике:
- «Singular»: используется для 1 и любого числа, заканчивающегося на 1, за исключением чисел, заканчивающихся на 11.
- Примеры: 1 собака, 21 собака, 101 собака
- «Несколько»: используется для 2, 3 и 4, а также для любого числа, оканчивающегося на 2, 3 или 4, за исключением чисел, оканчивающихся на 12, 13 и 14.
- Примеры: 2 собаки, 3 собаки, 4 собаки, 32 собаки, 43 собаки, 104 собаки
- «Многие»: все, что не считается «Единственным» или «Мало».
- Примеры: 0 собак, 5 собак, 11 собак, 13 собак, 25 собак, 111 собак, 114 собак
Соревнование
Если задан целочисленный ввод в диапазоне [0, 1000], верните, 1
если он принадлежит категории «единственное число», 2
если он принадлежит категории «несколько» и 5
если он принадлежит категории «многие».
Ваша программа может быть функцией или может использовать STDIN. Вы можете распечатать в STDOUT или вернуть значение из функции
Это сложная задача для гольфа , поэтому выигрывает решение с наименьшим количеством байтов.
1
, 2
и 5
в частности? Кроме того, почему я не могу использовать коды выхода?