백준 2473 세 용액 문제 풀이
백준 2473 세 용액 문제 풀이
백준 온라인 저지, 2473번: 세 용액
도입
기본적으로 두 용액 문제의 변형이다. 두 용액 문제에서는 용액을 두개만 합성하지만, 이번에는 세개를 합성한다.
용액 합성의 개수가 늘었지만, 두 용액에서 한개만 더 늘었을 뿐이므로 다소 무식하게 접근할 수 있다.
풀어보기
두 용액에서 전체 용액에 대해 투 포인터를 사용했다면, 세 용액에서는 용액 하나를 미리 선택하고 나머지 용액에 대해 투 포인터를 사용하는 전략을 사용하였다.
1
2
3
4
5
for _i in range(n - 2): # 용액이 항상 셋은 남아야 하므로
select = arr.pop()
# 조합: 이미 한번 살펴본 조합은 다시 살펴보지 않아도 되므로 그냥 pop 처리
# (투 포인터 처리)