본문 바로가기

대회 리뷰/BOJ

(49)
2023 POSTECH Programming Contest Open 2023 POSTECH Programming Contest Open www.acmicpc.net A - 모범생 포닉스 단순 수학 00:01 AC C - 이상한 배열 다음과 같이 배열 B와 set S를 정의하자. B[i] = {A[i], i}; S = {1, 2, 3, ..., N - 1, N}; 그리고 배열 B는 오름차순으로 정렬해주자. 이제 정렬된 배열 B의 원소를 순회하면서 B[i].second를 S에서 제거하면 된다. 이때 S에서 B[i].second의 다음 원소를 가리키는 iterator를 it라고 하자. B[i].first == B[i + 1].first인데 it == S.end()이거나 *it != B[i + 1].second이면 배열 A는 이상한 배열이 아니다. 00:08 AC G - 대회 ..
2023 SCON Open Contest 2023 SCON Open Contest 사용 가능한 언어 C++17 Python 3 C11 PyPy3 Java 15 www.acmicpc.net A - 정보섬의 대중교통 단순 수학 N
2023 부산대학교 CodeRace Open Contest 2023 부산대학교 CodeRace Open Contest www.acmicpc.net A - 첨탑 밀어서 부수기 단순 구현 00:01 AC B - 영역 색칠 색이 k번 뒤바뀌는 영역은 최소 ((k + 1) / 2 + 1)번의 붓칠이 필요하다. 00:05 AC D - 게임을 클리어하자 dp로 풀이할 수 있는데 26093번과 매우 유사하다. 최솟값 2개만 구하면 되므로 O(NM)이 가능하다. 00:13 AC E - 시간이 겹칠까? 누적 합 00:15 AC imos법이라고 많이 불리던데 간단한 테크닉에 별도의 이름을 붙일 필요가 있나 싶다. F - 산지니의 여행계획 지문이 너무 억지스럽다. 여러 풍경을 차 안에서 느긋이 즐기고 싶다면서 마지막에는 운전 거리를 최대한 줄여보자고 한다. 아무튼 mst + dfs..
2023 가지컵 2023 가지컵 www.acmicpc.net A - 가지 교배 흰색 가지만 가지고 있는 조수가 있는지 확인하면 된다. 대회 당시에는 지문이 조금 이상하였는데 출제자의 의도를 파악해서 풀었다. 00:03 AC B - 가지 산사태 1층은 항상 빗물을 받게 되므로 1층만 확인하면 된다. 00:07 AC C - 하이퍼 가지 따기 xor 00:10 AC E - 가지 사진 찾기 가지 사진의 비율이 절반을 초과하므로 가운데 사진은 항상 가지 사진이다. 가지를 가리키는 이름을 알아낼 수 있으므로 가지 사진 번호의 범위는 이분 탐색으로 찾으면 된다. 00:18 AC G - 슬슬 가지를 먹지 않으면 죽는다 mst 00:22 AC F - 가지 이모지 가능한 gcd 값이 얼마 없다는 믿음을 가지고 set으로 풀이하였다. 00..
2023 IamCoder Qualification Test Open 2023 IamCoder Qualification Test Open www.acmicpc.net A - 옷걸이 (상의의 개수) >= (상의 걸이의 개수) and (하의의 개수) >= (하의 걸이의 개수)를 만족해야 한다. 00:04 WA 공용 옷걸이에 아무 옷이나 걸면 안 된다. 상의 걸이와 하의 걸이를 모두 사용한 후 남은 옷만 걸어야 한다. 00:08 AC B - 보디빌딩 루틴은 하루에 몇 번이고 진행할 수 있으므로 마지막 날에 몰아서 진행하면 된다. 00:15 AC C - 공룡 게임 다음과 같은 점화식을 세울 수 있다. dp[i][j][k] = i번째 장애물을 (j ? "슬라이딩" : "점프") 동작으로 피하였고 (j ? "점프" : "슬라이딩") 동작을 마지막으로 한 시점이 k번째 장애물일 때 패..
2023 고려대학교x연세대학교 프로그래밍 경시대회 Open Contest 2023 고려대학교x연세대학교 프로그래밍 경시대회 Open Contest www.acmicpc.net A - 당신은 운명을 믿나요? 구현 00:02 AC B - Parity Constraint Closest Pair (Easy) 배열 A, B, C를 다음과 같이 정의하자. A = 홀수 좌표를 저장하는 배열 B = 짝수 좌표를 저장하는 배열 C = 모든 좌표를 저장하는 배열 서로 다른 두 점의 거리 중 짝수인 최솟값은 배열 A와 B에서 인접한 원소의 차잇값의 최솟값을 구하면 된다. 홀수인 최솟값은 방금 전과 동일하게 배열 C에서 인접한 원소의 차잇값의 최솟값을 구하면 된다. 이때 인접한 두 원소의 parity가 상이한 경우만 고려해야 한다. 00:07 WA 분명히 완벽한 풀이인데 WA를 받았다. 원인을 찾..
2023 UNIST-DGIST-POSTECH 연합 프로그래밍 경진대회 (2023 UDPC) Open Contest 2023 UNIST-DGIST-POSTECH 연합 프로그래밍 경진대회 (2023 UDPC) Open Contest www.acmicpc.net A - 탁구 경기 단순 구현 00:01 AC B - UDPC 파티 U와 C의 빈도의 합을 x, D와 P의 빈도의 합을 y라고 하자. 먼저 C가 등장하지 않았고 D와 P가 균등하게 등장하였다고 가정하자. 이 경우 x > (y + 1) / 2를 만족하면 윤이가 선정될 수 있으므로 "U"를 출력하면 된다. 다음으로 U가 등장하지 않았다고 가정하자. 이 경우 y > 0을 만족하면 달구 또는 포닉스가 선정될 수 있으므로 "DP"를 출력하면 된다. "C"를 출력하는 경우는 존재하지 않는다. 00:08 AC C - 카드 뒤집기 양 끝에서 시작하여 번갈아가며 뒤집으면 된다. N..
GEC-Cup (Open contest) GEC-Cup (Open contest) www.acmicpc.net 서론 문제 질이 조금 아쉬웠는데 내 기준에서 흥미로운 문제가 없었다. A - 특별한 학교 이름 구현 00:01 AC B - 특별한 작은 분수 구현 00:03 AC C - 특별한 학교 이름 암호화 구현 처음 세 자리만 보면 된다. 00:06 AC D - 특별한 큰 분수 시간이 어느 정도 경과하면 다음 사이클 중 하나에 빠지게 된다. 4 4 4 ... 8 2 7 8 2 7 ... 0 6 5 12 0 6 5 12 ... 00:26 AC F - 특별한 서빙 pq 00:30 AC E - 특별한 드롭킥 인접한 장애물을 최대한 병합하되 더 이상 병합할 수 없다면 기존 장애물에 붙여서 설치한다. 00:44 WA 거리가 가까운 장애물부터 병합해야 한다..