본문 바로가기

대회 리뷰/BOJ

(49)
제2회 고려대학교 MatKor Cup: 2023 Winter Open Contest 제 2회 고려대학교 MatKor Cup : 2023 Winter Open Contest www.acmicpc.net A - 몇개고? 단순 수학 00:01 AC B - 선형 회귀는 너무 쉬워 1 수학 00:07 AC D - 맨해튼에서의 모임 중앙값 찾기 00:16 AC E - 디지털 XOR 상당히 귀찮은 문제였다. 가능한 조합을 모두 찾아 봐야 하는데 직접 손으로 찾기는 어렵다. 이를 위하여 분석용 프로그램을 별도로 작성하였고 다음과 같은 결과를 얻었다. 피연산자의 개수는 3개 혹은 4개이다. 피연산자의 개수가 3개인 경우에는 동일한 숫자를 3번 사용하면 된다. 예외적으로 8은 {5, 6, 9}로, 9는 {5, 6, 8}로 조합한다. 피연산자의 개수가 4개인 경우에는 각 숫자마다 최적이 되는 조합이 존재한..
제1회 보라매컵 본선 Open Contest 제1회 보라매컵 본선 www.acmicpc.net 서론 설 연휴랑 겹쳐서 업솔빙하였다. A - 장기자랑 먼저 배열 A를 정렬하자. N번 병사, 1번 병사, (N - 1)번 병사, 2번 병사, ... 순으로 공연하면 항상 최적이 된다. 엄밀한 증명은 까다롭지만 코포식 그리디 느낌으로 접근하면 쉽게 풀이할 수 있다. B - 영내순환버스 식을 세워서 잘 계산하면 된다. C - 조사전달 많은 인원이 필요한 사역에 최대한 적은 병사가 차출되도록 하면 된다. 배열 A와 B를 정렬한 후 그리디하게 매칭시켜주면 된다. 이 문제 역시 코포식 그리디 느낌으로 접근하면 된다. D - 이기적인 목봉 체조 (Easy) 다음과 같은 점화식을 세울 수 있다. dp[i][j] = [1 .. j]번 훈련병을 i개의 그룹으로 편성할 때..
Hello, BOJ 2023! Hello, BOJ 2023! www.acmicpc.net 서론 처음으로 참가하는 오프라인 대회이다. 서울대 처음 가봤는데 별 거 없었다. 난이도 조절 대실패 대회 당일 기준으로 D5였는데 아쉽게도 P1 키링을 받았다. 올해 UCPC에서는 아마도 D1 키링을 받을 듯 하다. 깜빡하고 볼펜을 안 가져왔는데 편의점이 멀리 있어서 뛰어 갔다 왔다. 위치 못 찾아서 기숙사생 붙잡고 여쭤봤는데 친절하게 알려주셨다. 대회 결과는 전체 92명 참가자 중 28등으로 수상권에는 들지 못하였다. A - 2023년이 기대되는 이유 1과 0으로만 구성되어 있다면 무수히 많은 m이 존재한다. 그렇지 않다면 + 기호를 넣어서 만들 수 있는 모든 값을 미리 구해두자. 이제 가능한 m에 대하여 계산한 결과값이 존재하는지 확인하면 된..
보드게임컵 보드게임컵 www.acmicpc.net A - 노 땡스! 단순 구현 00:01 AC B - 할리갈리 단순 구현 00:03 AC C - 크레이지 타임 단순 구현 00:09 AC D - Yacht Dice 단순 구현 00:19 AC N - 수 나누기 게임 Sieve of Eratosthenes 비슷하게 돌리면 된다. 00:23 AC G - 모든 곳을 안전하게 모든 경우에 대하여 실제로 옮겨보면 된다. 00:35 WA 일부 조건을 빠뜨려서 불가능한 이동을 하였다. 00:39 AC E - 벚꽃 내리는 시대에 결투를 다음과 같은 점화식을 세울 수 있다. dp[i][j] = i번째 공격에서 남은 라이프가 j일 때 남은 오라의 최댓값, 불가능하다면 -1 01:05 WA 01:10 WA dp 업데이트 과정에서 방법 배..
제1회 보라매컵 예선 Open Contest 제1회 보라매컵 예선 Open Contest www.acmicpc.net A - 특식 배부 단순 수학 00:01 AC B - 출입 기록 단순 구현 00:03 AC E - 조교의 맹연습 dijkstra 00:12 AC 정해는 knapsack dp이며 dijkstra보다 훨씬 빠르게 돌아간다. C - 시간 외 근무 멈춰! 마감 기한이 빠른 순으로 처리하면 된다. 00:17 WA while 문 대신 if 문을 사용하였다. 00:18 TLE if 문을 while 문으로 바꾸니 반복문이 중첩되었고 break 문이 오작동하였다. 00:19 AC 실버 문제에 페널티를 두 번이나 쌓았다. ps는 확실히 스트레스다. F - 통신소 대각선 누적 합 26009번 코드를 복붙한 후 살짝 수정하였다. 00:35 AC 26009..
나는코더다 2022 송년대회 Open Contest 나는코더다 2022 송년대회 Open Contest www.acmicpc.net A - 시로코와 은행털기 knapsack dp 00:07 AC E - 겨울 축제 감동 수치가 i인 팀 K개를 합치면 감동 수치가 (i + 1)인 팀이 만들어진다. 이러한 방식으로 최대한 많은 팀을 합치면 된다. 선택되지 않은 팀은 다시 K개의 팀으로 분할해야 한다. 00:47 WA 변수명을 혼동하였다. 00:49 AC I - 다오의 행사 계획하기 LCA + 누적 합 01:20 AC B - 캠핑하기 식을 정리하면 일차함수의 최댓값을 구하는 문제가 된다. 후보 함수를 적절히 관리하면서 해결하였다. 02:52 WA 수식에 오류가 있었다. 02:57 WA 여전히 수식에 오류가 있었다. 02:58 RTE iterator 사용이 미흡하..
SciOI 2022 Open Contest SciOI 2022 Open Contest www.acmicpc.net A - 카드 뽑기 식을 정리하면 답은 mul(각 수의 등장 횟수 + 1) - 1이 된다. 00:12 AC D - 직육면체 각 면의 면적은 p의 배수가 되므로 적어도 두 변의 길이는 p의 배수여야 한다. 00:21 AC C - 점수 내기 Fenwick Tree로 눈물의 똥꼬쇼를 펼쳤다. 01:09 WA WA의 원인을 찾지 못해서 stress test를 돌렸고 계산 과정에서 사소한 오류가 있음을 발견하였다. 01:30 AC 정해는 dp를 이용하는데 Fenwick Tree 풀이보다 훨씬 간단하다. 다음과 같은 배열 A와 psum을 정의하자. A[i] = 점수가 i인 학생의 수 psum[i] = sum(A[1 .. i]) A와 psum 배열..
Good Bye, BOJ 2022! Good Bye, BOJ 2022! www.acmicpc.net 서론 전체 599명의 참가자 중 35등으로 오프라인 본선에 진출하였다. 수상 가능성은 0에 가까워서 가볍게 여행 다녀온다고 생각해야겠다. A - 2022년이 아름다웠던 이유 구현 00:06 AC B - 나무 블럭 게임 ans = max(avg, A[N - 1]); 00:12 AC D - 이미지 보정 작업 이분 탐색 + bfs 00:38 AC C - 데이터 순서 복원 임의의 단계 a와 b에 대하여 a와 b의 서열을 알 수 있다. 이를 이용하여 위상 정렬하면 된다. 00:46 AC 정해는 직관적이지 않아서 Pass 2023/01/10 추가 위상 정렬은 overkill인데 단순히 사용자 정의 함수로 정렬하면 된다. E - 리그전 상위 (k - 1..