λ¬Έμ
Finnμ μμ¦ μν곡λΆμ λΉ μ Έ μμ΅λλ€. μν 곡λΆλ₯Ό νλ Finnμ μμ°μ nμ μ°μν μμ°μλ€λ‘ νν νλ λ°©λ²μ΄ μ¬λ¬κ°λΌλ μ¬μ€μ μκ² λμμ΅λλ€. μλ₯Όλ€μ΄ 15λ λ€μκ³Ό κ°μ΄ 4κ°μ§λ‘ νν ν μ μμ΅λλ€.
- 1 + 2 + 3 + 4 + 5 = 15
- 4 + 5 + 6 = 15
- 7 + 8 = 15
- 15 = 15
μμ°μ nμ΄ λ§€κ°λ³μλ‘ μ£Όμ΄μ§ λ, μ°μλ μμ°μλ€λ‘ nμ νννλ λ°©λ²μ μλ₯Ό returnνλ solutionλ₯Ό μμ±ν΄μ£ΌμΈμ.
μ νμ¬ν
- nμ 10,000 μ΄νμ μμ°μ μ λλ€.
λμ μ½λ
def solution(n):
stack = []
answer = []
for i in range(1,n+1):
while sum(stack) != n:
stack.append(i)
i += 1
if sum(stack) > n:
break
if sum(stack) == n:
answer.append(stack)
stack = []
return len(answer)
λΆμ > κ°λ¨ν λ¬Έμ μΈ κ±° κ°μλ° μκΎΈ μνλλλ‘ μ½λκ° μμ§μ Έμ κ³ μν λ¬Έμ λ€. μ΄κ²μ κ² μ¬λ¬ λ°©λ²μ κ³ λ―Όν΄λ³΄λ€κ° 1λΆν° μ°μν μ -> 2λΆν° μ°μν μ -> 3λΆν° μ°μν μ ... μ΄λ°μμΌλ‘ μ°μλ μλ₯Ό appendν΄κ°λ©° κ·Έ ν©μ΄ nκ³Ό λμΌν λλ§ answer λ°°μ΄μ stackμ appendνλ λ°©λ²μ μ ννλ€. κ·Έλ¦¬κ³ μ΅μ’ μ μΌλ‘ λ°°μ΄μ κΈΈμ΄λ₯Ό λ°ννμλ€.
'Algorithm > Programmers' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Programmers] λͺ¨μκ³ μ¬ (0) | 2022.05.05 |
---|---|
[Programmers] JadenCase λ¬Έμμ΄ λ§λ€κΈ° (0) | 2022.05.04 |
[Programmers] μ΅μκ° λ§λ€κΈ° (0) | 2022.05.04 |
[Programmers] μμ° (0) | 2022.05.04 |
[Programmers] λ°©λ¬Έ κΈΈμ΄ (0) | 2022.05.04 |