21 lines
350 B
Python
21 lines
350 B
Python
|
|
def integer_break(n):
|
||
|
|
key_map = {1: 1, 2: 1, 3: 2, 4: 4}
|
||
|
|
if n in key_map:
|
||
|
|
return key_map.get(n)
|
||
|
|
|
||
|
|
# n>5
|
||
|
|
tmp = n % 3
|
||
|
|
r = 0
|
||
|
|
if tmp == 1:
|
||
|
|
k = (n - 4) // 3
|
||
|
|
tmp = 4
|
||
|
|
elif tmp == 2:
|
||
|
|
k = (n - 2) // 3
|
||
|
|
else:
|
||
|
|
k = n // 3
|
||
|
|
tmp = 1
|
||
|
|
return pow(3, k) * tmp
|
||
|
|
|
||
|
|
|
||
|
|
print(integer_break(10))
|