complete 1463, 1931, 2156, 11053
This commit is contained in:
@@ -1,32 +0,0 @@
|
|||||||
M = {1:0, 2:1, 3:1, 10:3}
|
|
||||||
def ndp(n):
|
|
||||||
global M
|
|
||||||
stack = []
|
|
||||||
if n in M:
|
|
||||||
return M[n]
|
|
||||||
if n % 3 == 0:
|
|
||||||
stack.append((n, n//3))
|
|
||||||
if n %2 == 0:
|
|
||||||
stack.append((n, n//2))
|
|
||||||
stack.append((n, n-1))
|
|
||||||
while stack:
|
|
||||||
node = stack[-1]
|
|
||||||
if node[1] in M:
|
|
||||||
if node[0] in M:
|
|
||||||
if M[node[1]] + 1 < M[node[0]]:
|
|
||||||
M[node[0]] = M[node[1]] + 1
|
|
||||||
else:
|
|
||||||
M[node[0]] = M[node[1]] + 1
|
|
||||||
stack.pop()
|
|
||||||
continue
|
|
||||||
if node[1] == 1:
|
|
||||||
M[node[0]] = 1
|
|
||||||
stack.pop()
|
|
||||||
continue
|
|
||||||
if node[1] % 3 == 0:
|
|
||||||
stack.append((node[1], node[1]//3))
|
|
||||||
if node[1] % 2 == 0:
|
|
||||||
stack.append((node[1], node[1]//2))
|
|
||||||
stack.append((node[1], node[1] - 1))
|
|
||||||
return M[n]
|
|
||||||
print(ndp(int(input())))
|
|
||||||
15
zeta_python/completed/11053.py
Normal file
15
zeta_python/completed/11053.py
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
N = int(input())
|
||||||
|
A = list(map(int, input().split()))
|
||||||
|
|
||||||
|
T = [0 for _ in range(N)]
|
||||||
|
T[0] = 1
|
||||||
|
|
||||||
|
for i in range(1, N):
|
||||||
|
t = []
|
||||||
|
for j in range(i):
|
||||||
|
if A[j] < A[i]:
|
||||||
|
t.append(T[j] + 1)
|
||||||
|
else:
|
||||||
|
t.append(1)
|
||||||
|
T[i] = max(t)
|
||||||
|
print(max(T))
|
||||||
15
zeta_python/completed/1463.py
Normal file
15
zeta_python/completed/1463.py
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
N = int(input())
|
||||||
|
|
||||||
|
T = [0, ]
|
||||||
|
|
||||||
|
for i in range(1, N):
|
||||||
|
new = i + 1
|
||||||
|
t = []
|
||||||
|
if new % 3 == 0:
|
||||||
|
t.append(T[new // 3 - 1] + 1)
|
||||||
|
if new % 2 == 0:
|
||||||
|
t.append(T[new // 2 - 1] + 1)
|
||||||
|
t.append(T[new - 1 - 1] + 1)
|
||||||
|
T.append(min(t))
|
||||||
|
|
||||||
|
print(T[-1])
|
||||||
13
zeta_python/completed/1931.py
Normal file
13
zeta_python/completed/1931.py
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
N = int(input())
|
||||||
|
I = [tuple(map(int, input().split())) for _ in range(N)]
|
||||||
|
|
||||||
|
I.sort(key=lambda x: (x[1], x[0]))
|
||||||
|
|
||||||
|
last = 0
|
||||||
|
cnt = 0
|
||||||
|
for i in range(N):
|
||||||
|
if last <= I[i][0]:
|
||||||
|
last = I[i][1]
|
||||||
|
cnt += 1
|
||||||
|
|
||||||
|
print(cnt)
|
||||||
15
zeta_python/completed/2156.py
Normal file
15
zeta_python/completed/2156.py
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
N = int(input())
|
||||||
|
I = [int(input()) for i in range(N)]
|
||||||
|
|
||||||
|
T = [[0 for _ in range(3)] for _ in range(N)]
|
||||||
|
|
||||||
|
T[0][0] = 0
|
||||||
|
T[0][1] = I[0]
|
||||||
|
T[0][2] = 0
|
||||||
|
|
||||||
|
for i in range(1, N):
|
||||||
|
T[i][0] = max((T[i-1][0], T[i - 1][1], T[i - 1][2]))
|
||||||
|
T[i][1] = T[i - 1][0] + I[i]
|
||||||
|
T[i][2] = T[i - 1][1] + I[i]
|
||||||
|
|
||||||
|
print(max(T[-1]))
|
||||||
Reference in New Issue
Block a user