Täglicher AtCoder # 43 in Python

Einführung

Letztes Mal

#43 Problem

** Gedanken ** Ich konnte es während des Wettbewerbs nicht lösen. Ich denke, dieses Problem ist schwierig, weil ich den Code zum Generieren der Run-Run-Nummern nicht schreiben kann. Ich konnte auch nicht schreiben. Dem Kommentar zufolge scheint der Rest geteilt durch 10 und 9 zu beachten. Wenn der Rest der Division von $ x $ durch 10 0 ist, wird die Einerstelle zu 0 und die Anzahl der Laufläufe, die generiert werden können, nimmt ab. In ähnlicher Weise verringert sich die Anzahl der Laufläufe, die erzeugt werden können, wenn der Rest der Division von $ x $ durch 9 0 ist. Denn wenn die Einerstelle 0 ist, gibt es nur 0 und 1 Run-Run-Nummern, so dass der Unterschied zwischen benachbarten Nummern 1 ist. Selbst wenn es 9 ist, gibt es nur 8 und 9. Wenn Sie organisieren, welche Art von Run-Run-Nummer für jede generiert wird,

x != 0 mod(10) → 10x+(x%10)-1
x != 9 mod(10) → 10x+(x%10)+1 

Es wird sein. Wenn Sie dies implementieren

from collections import deque

k = int(input())

lun = deque([])
for i in range(1,10):
    lun.append(i)

for i in range(k):
    x = lun.popleft()
    if x % 10 != 0:
        lun.append(10*x+(x%10)-1)
    lun.append(10*x+x%10)
    if x % 10 != 9:
        lun.append(10*x+(x%10)+1)
print(x)

Ich verwende deque, weil ich nur auf beide Enden der Daten zugreife

Zusammenfassung

Ich wollte es in der Produktion lösen. Ich bin nicht gut darin, den Rest zu berechnen, also werde ich mich um das ganzzahlige Problem kümmern. wir sehen uns.

Recommended Posts

AtCoder # 2 jeden Tag mit Python
Täglicher AtCoder # 6 in Python
Täglicher AtCoder # 18 in Python
Täglicher AtCoder # 53 in Python
Täglicher AtCoder # 33 in Python
AtCoder # 24 jeden Tag mit Python
Täglicher AtCoder # 37 in Python
AtCoder # 8 jeden Tag mit Python
Täglicher AtCoder # 42 in Python
Täglicher AtCoder # 21 mit Python
Täglicher AtCoder # 17 mit Python
Täglicher AtCoder # 38 in Python
Täglicher AtCoder # 54 in Python
Täglicher AtCoder # 11 in Python
Täglicher AtCoder # 15 in Python
Täglicher AtCoder # 47 mit Python
Täglicher AtCoder # 13 in Python
Täglicher AtCoder # 45 mit Python
AtCoder # 30 jeden Tag in Python
Täglicher AtCoder # 40 mit Python
Täglicher AtCoder # 10 mit Python
AtCoder # 5 jeden Tag mit Python
Täglicher AtCoder # 28 in Python
Täglicher AtCoder # 39 in Python
Täglicher AtCoder # 20 in Python
Täglicher AtCoder # 19 in Python
Täglicher AtCoder # 52 in Python
Täglicher AtCoder # 3 in Python
Täglicher AtCoder # 14 mit Python
Täglicher AtCoder # 50 mit Python
Täglicher AtCoder # 26 mit Python
Täglicher AtCoder # 4 mit Python
Täglicher AtCoder # 43 in Python
Täglicher AtCoder # 29 in Python
Jeden Tag mit Python AtCoder # 22
Täglicher AtCoder # 49 in Python
Täglicher AtCoder # 27 in Python
AtCoder # 1 jeden Tag mit Python
Täglicher AtCoder # 25 mit Python
Täglicher AtCoder # 16 in Python
Täglicher AtCoder # 12 in Python
Täglicher AtCoder # 48 in Python
Täglicher AtCoder # 23 in Python
Täglicher AtCoder # 34 in Python
Täglicher AtCoder # 51 mit Python
Täglicher AtCoder # 31 in Python
Jeden Tag mit Python AtCoder # 46
Täglicher AtCoder # 35 mit Python
AtCoder # 9 jeden Tag mit Python
Täglicher AtCoder # 44 mit Python
Jeden Tag mit Python AtCoder # 41
Atcoder ABC164 A-C in Python
Python-Eingabehinweis in AtCoder
Atcoder ABC167 A-D in Python
Atcoder ABC165 A-D in Python
Atcoder ABC166 A-E in Python
Atcoder ABC169 A-E in Python
AtCoder ABC177 A-D mit Python
Löse den Atcoder ABC169 A-D mit Python
[Python] Grundkenntnisse in AtCoder
Quadtree in Python --2