반응형
문제
https://www.acmicpc.net/problem/2470
풀이
투 포인터 알고리즘으로 풀이할 수 있는 문제입니다.
용액의 특성 값을 오름차순으로 정렬해주었습니다.
포인터 두개를 첫번째 인덱스와 마지막 인덱스로 두었습니다.
이 포인터가 가르치는 요소의 합이 0보다 작다면?
오름차순으로 나열되어있기 때문에, 왼쪽 포인터를 오른쪽으로 한 칸 이동시켜줍시다.
0보다 크다면?
오른쪽 포인터를 왼쪽으로 한 칸 이동시켜줍시다.
이러한 작업을 거치면서 두 합이 0과 더 가까워진다면, 해당 두 수를 저장해줍시다.
소스코드
후기
정렬과 투 포인터를 사용하는 기본적인 문제였습니다.
0과 가까운 값을 찾아주는게 핵심이였습니다.
반응형
'PS > 백준' 카테고리의 다른 글
[BOJ] 백준 1644 소수의 연속합 (Swift) (0) | 2023.05.03 |
---|---|
[BOJ] 백준 1806 부분합 (Swift) (1) | 2023.05.01 |
[BOJ] 백준 3273 두 수의 합 (Swift) (0) | 2023.04.28 |
[BOJ] 백준 1956 운동 (Swift) (0) | 2023.04.28 |
[BOJ] 백준 11404 플로이드 (Swift) (0) | 2023.04.28 |