https://programmers.co.kr/learn/courses/30/lessons/12924
코딩테스트 연습 - 숫자의 표현
Finn은 요즘 수학공부에 빠져 있습니다. 수학 공부를 하던 Finn은 자연수 n을 연속한 자연수들로 표현 하는 방법이 여러개라는 사실을 알게 되었습니다. 예를들어 15는 다음과 같이 4가지로 표현 할
programmers.co.kr
def solution(n):
i, j = 1, 2
sum = 1
result = 0
while i != j:
if sum < n:
sum += j
j += 1
else:
if sum == n:
result += 1
sum -= i
i += 1
return result
투포인터
1. i, j, sum, result = 1, 2, 1, 0 초기값 설정
2. while 문 (i != j)
- sum이 n보다 작으면, j를 더하고 j += 1
- 아니면, n일 경우 result += 1, i를 빼고 i += 1
3. result 반환
연속된 수를 이용하는 문제는 투포인터를 생각하자
'Algorithm > 프로그래머스' 카테고리의 다른 글
[프로그래머스] Lv2 - 최솟값 만들기 (파이썬) (0) | 2022.05.17 |
---|---|
[프로그래머스] Lv2 - 최댓값과 최솟값 (파이썬) (0) | 2022.05.17 |
[프로그래머스] Lv2 - 땅따먹기 (파이썬) (0) | 2022.05.14 |
[프로그래머스] Lv2 - 다음 큰 숫자 (파이썬) (0) | 2022.05.14 |
[프로그래머스] Lv2 - 올바른 괄호 (파이썬) (0) | 2022.05.14 |