최대 백색 타일 수 계산: 슬라이딩 윈도우와 경계 조건 처리

문제 해결을 위해 배열을 사용하려 했으나 메모리 초과가 발생하여, 원본 데이터를 직접 수정하며 슬라이딩 윈도우 방식으로 접근했다. 특히 경계 조건 처리는 항상 어려운 부분이지만, 핵심은 구간 커버리지 문제에서 각 구간의 우측 끝점을 기준으로 왼쪽으로 확장 가능한 최대 길이를 탐색하는 것이다. 주요 전략은 다음과 같다: 먼저 타일의 시작 위치 기준으로 정 ...

7월 27일 06:37에 게시됨

Codeforces 라운드 920 (Div. 3) 문제 풀이 분석

이 문서는 Codeforces Round 920 (Div. 3)의 문제 D, E, F에 대한 해결 전략과 C++ 코드 예시를 제공합니다. 문제 D: 절댓값 합 최대화 문제 설명: 두 개의 배열 A와 B가 주어졌을 때, 각 배열에서 하나의 요소를 뽑아 쌍을 이루고, 이 과정에서 만들어지는 모든 쌍의 요소들의 절댓값 차이의 합을 최대화해야 합니다. 모든 요소는 단 한 번만 사용될 수 있습니다. 해결 ...

7월 26일 06:22에 게시됨

Java 해시맵과 투 포인터를 활용한 네 가지 문제 풀이

1. 454. 네 수의 합 II (4Sum II) 이 문제는 네 개의 배열에서 각각 하나씩 선택하여 합이 0이 되는 조합의 개수를 찾는 문제입니다. 해시맵을 사용하면 시간 복잡도를 O(n²)으로 줄일 수 있습니다. 먼저 첫 번째와 두 번째 배열의 모든 쌍의 합과 그 등장 횟수를 해시맵에 저장합니다. 그 다음 세 번째와 네 번째 배열의 모든 쌍의 합에 대해, 0에서 해당 합을 뺀 값이 ...

6월 25일 16:04에 게시됨