Biorąc pod uwagę wejście n
, twój program lub funkcja musi wypisać najmniejszą dodatnią liczbę całkowitą, k
tak aby n
zaokrąglona do najbliższej wielokrotności k
była większa niż n
.
Przykład.
Przy danych wejściowych 20
wartość wyjściowa powinna wynosić 3
:
Najbliższa wielokrotność
1
to20
, która nie jest większa niż20
.Najbliższa wielokrotność
2
to20
, która nie jest większa niż20
.Najbliższa wielokrotność
3
to21
, która jest większa niż20
, więc jest generowana.
Przypadki testowe
#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
Dane wyjściowe przy każdym nieparzystym wejściu powinny wynosić 2.
Zasady
n
jest dodatnią liczbą całkowitą mniejszą niż2^32
- zaokrąglanie jest wykonywane w taki sposób, że jeśli dwa wielokrotności
k
są jednakowo odległen
, wybierana jest większa ( „zaokrąglanie o połowę w górę” ). W ten sposób każdy kurs dziwnyn
daje wynik2
. - To jest golf golfowy , więc wygrywa najkrótszy kod w każdym języku .
Odpowiedzi:
Python 3 ,
4838 bajtówEdycja: -10 bajtów za pomocą rekurencji
Wypróbuj online!
źródło
Japt , 6 bajtów
Wypróbuj online!
Wyjaśnienie:
źródło
r
jest wbudowany? o_oo æ@<rX
MATL , 13 bajtów
Wypróbuj online! Lub sprawdź wszystkie dane wejściowe od
1
do1000
.Wyjaśnienie
Rozważ wejście
6
.źródło
Python 2 , 35 bajtów
Wypróbuj online!
źródło
JavaScript (ES6),
2825 bajtówSprawdź to
Lub przetestuj wszystkie liczby od 1-1000 (Daj mu minutę na uruchomienie):
Pokaż fragment kodu
źródło
Proton , 33 bajty
Wypróbuj online!
źródło
Pyth ,
1211 bajtówWypróbuj tutaj.
źródło
Proton , 33 bajty
Wypróbuj online!
źródło
<!-- language: lang-python -->
?Galaretka , 11 bajtów
Monadyczny link przyjmujący i zwracający dodatnie liczby całkowite.
Wypróbuj online! lub zobacz a testowy .
W jaki sposób?
Uwaga: połączeniem
1
jest tylko obsługiwać przypadki, w którychn
jest jeden1
,2
lub4
gdy wynik musi byćn+1
(‘R÷@%1<.¬TṂ
również dzieło).źródło
Haskell ,
3332 bajtyWypróbuj online!
Zaoszczędzono jeden bajt dzięki w0lf
źródło
!!0
zamiasthead
Dyalog APL,
2322 bajtówWypróbuj online!
źródło
Pyth, 5 bajtów
Zestaw testowy
Brak wbudowanych funkcji zaokrąglania, po prostu sprawdzanie pierwszej dodatniej liczby całkowitej T, gdzie podwójny mod wejściowy T jest większy lub równy T.
Wyjaśnienie:
źródło
Kod maszynowy x86, 17 bajtów
Ten kod implementuje podstawowe, iteracyjne rozwiązanie w postaci funkcji wielokrotnego użytku:
Funkcja działa zgodnie z konwencją wywoływania fastcall , dzięki czemu pojedynczy parametr (
n
) jest przekazywany doECX
rejestru. Zwracana wartość (k
) jest zwykle zwracana doEAX
rejestru.Wypróbuj online!
źródło
Java 8, 42 bajty
Lambda od
Integer
doInteger
.Wypróbuj online
Podziękowanie
źródło
f=1
i używając++f
pierwszegof
, w ten sposób:n->{for(int f=1;;)if(n%++f*2>=f)return f;}
Perl 5 , 24 + 1 (-p) = 25 bajtów
Wypróbuj online!
Próbuje każdej liczby całkowitej,
$k
zaczynając od 1, aż znajdzie resztę, która jest co najmniej w połowie$k
.źródło
Dalej (gforth) , 45 bajtów
Wypróbuj online!
Wyjaśnienie kodu
źródło
05AB1E , 9 bajtów
Wypróbuj online!
Wyjaśnienie
źródło
Rockstar , 681 bajtów
Możesz wypróbować Rockstar online , ale musisz skopiować i wkleić kod. Zostaniesz poproszony o podanie numeru wejściowego.
Nie zdecydowałem się na najmniejszą liczbę bajtów, ponieważ Rockstar oczywiście nie jest przeznaczony do gry w golfa, więc zamiast tego spróbowałem napisać tekst Rock 'n' Roll.
Wyjaśnienie:
Jest to oparte na tym samym rozwiązaniu co inne (python, java):
Najpierw jednak muszę zdefiniować funkcje modułu i sufitu, które dla poezji nazywane są Myślą i Kamieniem.
Poniżej jest mniej poetycka wersja z różnymi nazwami zmiennych i objaśnieniami, w których składnia jest niejasna. Nawiasy oznaczają komentarze.
źródło
Galaretka , 18 bajtów
Wypróbuj online!
Pełny program
źródło
Full program.
Kiedy to nie jestSwift 3 , 51 bajtów
Z kilku bardzo dziwnych powodów
[0]
nie działa online. Oto wersja kompatybilna z kompilatorem online (która używa.first!
zamiast tego):Pakiet testowy (kompatybilny online).
źródło
C # (mono) , 39 bajtów
Wypróbuj online!
źródło
Stax , 7 bajtów
Uruchom i debuguj
źródło