Rozważ dodatnie liczby całkowite równe pięciu w systemie dziesiętnym. Oto pierwsze 25, wyrównane do prawej:
X 5^X
1 5
2 25
3 125
4 625
5 3125
6 15625
7 78125
8 390625
9 1953125
10 9765625
11 48828125
12 244140625
13 1220703125
14 6103515625
15 30517578125
16 152587890625
17 762939453125
18 3814697265625
19 19073486328125
20 95367431640625
21 476837158203125
22 2384185791015625
23 11920928955078125
24 59604644775390625
25 298023223876953125
Zauważ, że prawa kolumna wszystkich praw znajduje się po prawej stronie 5
. Druga kolumna po prawej to wszystko 2
. Trzecia kolumna z prawej strony, czytane od góry do dołu, zastępców 1
, 6
, 1
, 6
, itd. Kolejna kolumna zaczyna 3
, 5
, 8
, 0
a następnie cykle.
W rzeczywistości każda kolumna (jeśli schodzimy wystarczająco daleko) ma sekwencję cykliczną cyfr, których długość jest dwa razy większa niż w poprzednim cyklu, z wyjątkiem cykli początkowych 5
i 2
cyklicznych.
Po wywołaniu N numeru kolumny, zaczynając od N = 1 po prawej stronie, pierwsze kilka cykli to:
N cycle at column N
1 5
2 2
3 16
4 3580
5 17956240
6 3978175584236200
7 19840377976181556439582242163600
8 4420183983595778219796176036355599756384380402237642416215818000
Wyzwanie
Biorąc pod uwagę dodatnią liczbę całkowitą N, wypisz cyfry dziesiętne cyklu w kolumnie N, jak opisano powyżej. Na przykład wyjście dla N = 4 byłoby 3580
.
Cyfry mogą być wyprowadzane jako lista taka jak [3, 5, 8, 0]
lub w innym rozsądnym formacie, o ile:
- Cyfry są uporządkowane w kolejności od góry do dołu w kolumnach mocy. np.
0853
jest nieprawidłowy. - Cykl rozpoczyna się od najwyższej liczby w kolumnie mocy. np.
5803
jest nieprawidłowy, ponieważ 4. kolumna zaczyna się od „3
nie”5
. - Dokładnie jeden cykl jest generowany. np.
358
lub35803
lub35803580
wszystkie byłyby nieprawidłowe.
Twój kod musi działać przez co najmniej N = 1 do 30.
W razie potrzeby można założyć, że kolumny są indeksowane 0 zamiast 1 indeksowane. Więc N = 0 daje 5
, N = 1 daje 2
, N = 2 daje 16
, N = 3 daje 3580
itd.
Najkrótszy kod w bajtach wygrywa .
2^(N-2)
z wyjątkiemN = 1