[알고리즘] 투포인터 - 백준 2470

da__ell·2022년 10월 5일
0

DataStructure / ALGORITHM

목록 보기
4/23

합이 0에 가까운 2개의 요소를 구하는 문제이다.

잘못된 풀이

해당 풀이는 0보다 작은 합 중 최댓값, 0보다 큰 합 중 최솟값을 구한 뒤,
각 합을 비교해서 0에 가장 가까운 합을 출력하는 방식이다.
하지만 해당 부분은 메모리 초과로 오류가 발생하였다.

해당 방식은 투포인터 방식으로 해결하였다.
1. 배열의 양 끝에 포인터를 할당
2. 두 요소의 합이 0이면 해당 요소를 바로 출력
3. 두 요소의 합을 res에 저장, 이후 절댓값이 더 작으면 해당 요소와 포인터를 저장.
4. 해당 요소가 양수면 오른쪽 포인터를 1감소 음수면 왼쪽 포인터를 1 증가시킴

profile
daelkdev@gmail.com

0개의 댓글