https://www.acmicpc.net/problem/2118
투포인터 문제다.
풀이
문제에 주어지는 두 지점사이의 거리는 시계방향과 반시계 방향 중 짧은 쪽이 거리가 된다고 한다. 즉 시계방향 기준 반시계 방향 거리라 함은 (전체 길이 - 시계방향 거리) 로 계산이 가능하며 해당 지점의 거리는 둘 중 적은 거리로 정해진다는 것이다.
시작 인덱스와 끝 인덱스를 생성하여 구간의 길이를 측정한다. 구간의 길이가 최대거리보다 짧거나 같다면, 끝 인덱스를 한칸 늘린다. 반대로 현재 구간의 길이가 최대값보다 크다면, 시작 인덱스를 증가한다.
정답 코드
'Problem Solving > BOJ' 카테고리의 다른 글
[22862] 가장 긴 짝수 연속한 부분 수열 (large) (0) | 2023.01.19 |
---|---|
[1484] 다이어트 (0) | 2023.01.18 |
[1652] 누울 자리를 찾아라 (0) | 2023.01.16 |
[15565] 귀여운 라이언 (0) | 2023.01.15 |
[1337] 올바른 배열 (0) | 2023.01.14 |