С учетом входных данных n
ваша программа или функция должна вывести наименьшее положительное целое число k
, чтобы n
округленное до ближайшего кратного было k
больше, чем n
.
Пример.
Учитывая вход 20
, выходное значение должно быть 3
:
Ближайшим кратным
1
является20
, который не больше чем20
.Ближайшим кратным
2
является20
, который не больше чем20
.Ближайшие кратна
3
IS21
, который является больше20
, поэтому выход.
Тестовые случаи
#Input #Output
2 3
4 5
6 4
8 3
10 4
12 7
14 3
16 6
18 4
20 3
22 4
24 5
26 3
28 5
30 4
32 3
34 4
36 8
38 3
40 6
42 4
44 3
46 4
48 5
50 3
52 6
54 4
56 3
58 4
60 7
62 3
64 5
66 4
68 3
70 4
72 11
74 3
76 6
78 4
80 3
82 4
84 5
86 3
88 5
90 4
92 3
94 4
96 7
98 3
1000 6
Выходные данные с учетом любого нечетного ввода должны быть 2.
правила
n
положительное целое число меньше2^32
- округление выполняется таким образом, что, если два кратных
k
одинаково удалены от негоn
, выбирается больший ( округление пополам ). Таким образом, каждый нечетный результатn
дает результат2
. - Это код-гольф , поэтому выигрывает самый короткий код на каждом языке .
Ответы:
Python 3 ,
4838 байтИзменить: -10 байт с помощью рекурсии
Попробуйте онлайн!
источник
Japt , 6 байт
Попробуйте онлайн!
Объяснение:
источник
r
такое встроенный? о_оo æ@<rX
MATL , 13 байт
Попробуйте онлайн! Или проверьте все входы от
1
до1000
.объяснение
Рассмотрим ввод
6
.источник
Python 2 , 35 байт
Попробуйте онлайн!
источник
JavaScript (ES6),
2825 байтПопробуй это
Или проверьте все числа от 1 до 1000 (дайте минуту для запуска):
Показать фрагмент кода
источник
Протон , 33 байта
Попробуйте онлайн!
источник
Pyth ,
1211 байтовПопробуй это здесь.
источник
Протон , 33 байта
Попробуйте онлайн!
источник
<!-- language: lang-python -->
?Желе , 11 байт
Монадическая ссылка, берущая и возвращающая положительные целые числа.
Попробуйте онлайн! или посмотрите набор тестов .
Как?
Примечание: конкатенация
1
просто обрабатывать случаи , когдаn
является одним из1
,2
или4
когда результат должен бытьn+1
(‘R÷@%1<.¬TṂ
также будет работать).источник
Haskell ,
3332 байтаПопробуйте онлайн!
Сохранено один байт благодаря w0lf
источник
!!0
вместоhead
Дьялог АПЛ,
2322 байтаПопробуйте онлайн!
источник
Pyth, 5 байт
Тестирование
Нет встроенных округлений, просто проверка на первое положительное целое число T, где удвоенный входной мод T больше или равен T.
Объяснение:
источник
Машинный код x86, 17 байт
Этот код реализует основное итеративное решение в форме многократно используемой функции:
Функция следует соглашению о вызовах fastcall , так что единственный параметр (
n
) передается вECX
регистр. Возвращаемое значение (k
), как правило, возвращается вEAX
регистр.Попробуйте онлайн!
источник
Java 8, 42 байта
Лямбда из
Integer
вInteger
.Попробуйте онлайн
Подтверждения
источник
f=1
и использовав++f
первыйf
, например:n->{for(int f=1;;)if(n%++f*2>=f)return f;}
Perl 5 , 24 + 1 (-p) = 25 байт
Попробуйте онлайн!
Пытается каждое целое число,
$k
начиная с 1, пока не найдет остаток, который составляет не менее половины$k
.источник
Forth (gforth) , 45 байтов
Попробуйте онлайн!
Код Объяснение
источник
05AB1E , 9 байтов
Попробуйте онлайн!
объяснение
источник
рокзвезда , 681 байт
Вы можете попробовать Rockstar онлайн , но вам нужно будет скопировать и вставить код. Он предложит вам ввести номер.
Я не пошел на наименьшее количество байтов, потому что Rockstar явно не предназначен для игры в гольф, поэтому вместо этого я попытался перейти к текстам рок-н-ролла.
Объяснение:
Это основано на том же решении, что и другие (python, java):
Сначала мне нужно определить функции модуля и потолка, которые для поэзии называются «Мысль и Скала».
Ниже приведена менее поэтическая версия с разными именами переменных и пояснениями, где синтаксис неясен. Скобки обозначают комментарии.
источник
Желе , 18 байт
Попробуйте онлайн!
Полная программа.
источник
Full program.
Когда это не так?Swift 3 , 51 байт
Для некоторых весьма странных причин,
[0]
не работает в Интернете. Вот онлайн-совместимая версия компилятора (которая использует.first!
вместо этого):Test Suite (онлайн-совместимый).
источник
C # (моно) , 39 байт
Попробуйте онлайн!
источник
Stax , 7 байт
Запустите и отладьте его
источник