전체 글 203

SUAPC 2023 Summer Open Contest (Arena #5)

블로그에 처음 쓰는 아레나 후기 글이다. 아레나 #1은 계절학교와 병행해서 + C를 그냥 못 풀어서 등수를 박았고, 아레나 #2는 할 만큼 했으나 페널티로 인해 낮은 퍼포를 받았다. 두 대회 모두 딱히 복기할 거리도 없었다. 아레나 #3인 MatKor Cup은 깡수학 대회라길래 걸렀고, 아레나 #4 KSA 대회는 검수진이었다. 이러한 상황에서 아레나 #5인 SUAPC는 잘 칠 필요가 있었기 때문에 조금 집중해서 대회를 쳤다. SUAPC는 지난 2번의 대회에 출제진으로 참여한 적도 있었던 만큼, 기대를 안고 대회를 쳤다. ~0:12 대회를 켰는데, 일단 문제 수가 많았다. 내가 알기로 SUAPC는 13문제 체제로 유지되었던 것 같은데, 14문제가 나를 반기고 있었다. 같은 상황을 겪은 PPC와 대충 비슷한..

PS/CP 2023.09.08

3학년 여름 방학을 마치며

길었던 여름 방학이 끝이 났다. 체감상 긴 것이 아니라, 포스텍은 타 대학들보다 1학기 개강이 1주일 빠르고, 반대로 2학기는 1주일 늦게 시작하기 때문에 가히 3달의 여름 방학 기간이 주어진다. 4학년에 졸업을 한다 가정할 때, 3학년 여름방학은 자신의 진로를 확실하게 정하는 시간이 된다. 그래서 보통 취업을 염두에 둔다면 인턴을, 대학원 진학을 생각중이라면 연구참여를 하는 것이 보통이다. 하지만 나는 이번 방학에 그냥 PS나 하며 놀기로 했다. 다소 무계획 발언처럼 들리나, 나름의 근거가 있는 선택이었다. 먼저 취업을 하려면 병역 문제를 해결해야 하는데, 나는 내년에 ICPC를 나가야 해서 (주위에 이 말을 하면 이상한 사람 취급을 받는다.) 일단 4학년까지는 이를 처리하기가 힘든 상황이다. 또한, ..

기타 2023.09.02

2023 KSA Automata Summer Contest 검수 후기

대회가 끝난지 조금 되긴 했는데, 정리 목적으로 간단히만 적어보려 한다. 검수를 꽤 일찍 시작했는데, 개인적으로 좀 바빠서+문제가 어려워서 모든 문제를 검수하지는 못했다. 대회 링크: https://www.acmicpc.net/category/detail/3769 문제별 후기 A. 소수가 아닌 수 2 적절한 구현 문제인데, 대충 구현하면 leading zero라는 함정에 빠질 수 있다. B. 아침 태권도 다 보진 않았지만 이 문제 관해서 굉장히 많은 토론이 있었던 것으로 기억한다. 최종 버전은 가장 무난하게 뽑힌 것 같다. C. 이번에는 C번이 문자열 교육적인 그리디 문제이다. 좋은 문제라고 생각한다. D. 활쏘기 대결 게임 DP에 관한 충분한 이해를 요구하는 문제이다. 나는 그냥 자명하게 쉽다고 생각했..

Harbour.Space Scholarship Contest 2023-2024 (Div. 1 + Div. 2)

Div. 1이 있어 오랜만에 코포를 쳤다. A. Increasing and Decreasing (0:02, +) 공차를 뒤에서부터 1, 2, .. 로 설정해준 후 마지막에 수를 몰아서 쓰면 된다. B. Swap and Reverse (0:05, +) \(k\)가 짝수이면 문자열을 자유롭게 변형할 수 있고, 홀수이면 인덱스의 홀짝성을 유지한 채 자유롭게 바꿀 수 있다. 따라서 경우를 나눈 후 문자열을 정렬해주면 된다. C. Divisor Chain (0:44, +2) 쉽게 생각할 수 있는 방법이 다 반례가 있는 것 같아 뇌정지가 왔다. 이상한 풀이로 페널티를 적립하던 중 괜찮은 접근이 떠올라 증명 없이 내서 맞았다. 2의 거듭제곱에 한 번 도달하면 쉽게 끝을 낼 수 있는데, 여기 도달하기 위해 현재의 수를..

PS/CP 2023.08.27

2023 SCPC 2차 예선 후기

역시나 잘하시는 분들이 자세한 풀이를 많이 써 주셨기 때문에 간단하게만 기록합니다. 09:00 ~ 10:08 전날 좀 늦게 자서 비몽사몽한 상태로 눈을 떴다. 1번을 열었는데, 열자마자 PTSD가 왔다. 그 이유는 1학기 팀 연습 때 10번을 틀려 "오렌지도 10번 틀리는 문제"로 한동안 놀림감이 되었던 실버 문제 와 같은 그림이 있었기 때문이다. 그 때의 기억을 떠올리면서 열심히 짜서 냈는데, 30분이나 검토를 했음에도 불구하고 풀테가 안 긁히길래 당황했다. 긁힌 섭태가 좀 이상해서 문제를 다시 봤더니 완주를 하면 말을 재배치한다는 내용을 고려하지 않았다는 사실을 깨달았다. 이와 더불어 몇 가지 잡다한 버그를 고쳤더니 100점을 받을 수 있었다. 10:08~14:00 개인 일정으로 인해 잠시 자리를 비..

Codeforces Round 889 (Div. 1)

오랜만에 코포를 쳤다. A1. Dual (Easy Version) (0:14, +) A가 1/2로 나뉘어 있길래 1부터 풀었다. 횟수가 넉넉해서 대충 하나를 좀 키우고 2배씩 커지도록 만들면 될 것 같았다. 그대로 짜서 AC를 받았다. A2. Dual (Hard Version) (0:50, +2) 2는 1의 접근법을 사용할 수 없었다. 우선 한 가지 관찰이 필요하다: 모든 수가 0 이상이거나 모든 수가 0 이하이면 \(N-1\)번의 연산으로 단조 수열을 만들 수 있다. \(N=20\)이므로 우리는 12번 안에 모든 수를 0 이상 혹은 이하로 만들어야 한다. 이제 주어진 수열에서의 양수의 개수를 \(a\), 음수의 개수를 \(b\), 양수 중 최댓값을 \(x\), 음수의 절댓값 중 최댓값을 \(y\)라 하..

PS/CP 2023.07.30

2023 SCPC 1차 예선 후기

잘하시는 분들이 후기를 많이 써 주셔서 기록용으로 짧게만 씁니다. 1. 증강현실 배달 안경 BOJ의 스테디셀러 설탕 배달 문제를 일반화시킨듯 한 문제이다. 제한이 작아 모든 경우를 확인해보면 된다. 2. 딸기 수확 로봇 2번 이상 꺾는 것은 비효율적이므로 0번과 1번으로 경우를 나누어 잘 탐색해주면 된다. 이분 탐색과 투 포인터로 풀리는 전형적인 유형이다. 소소한 자랑으로 퍼솔을 해 기분이 좋았다. 3. 장난감 이후 3번을 봤는데, 대충 사풀을 짜서 냈더니 틀렸다. 다만, 60점이 나와야 할 풀이인데 0점이 나와 좀 당황스러웠다. SCPC를 오랜만에 쳐서 섭태를 긁으려면 큰 섭태는 무시해야 한다는 사실을 까먹은 채로 분노의 제출을 해 순식간에 10번 중 8번을 써 60점을 받아 버렸다. (이는 4번에도 ..

2023 UCPC 본선 후기

서론 UCPC 본선에 참가하였다. 팀 구성 등의 정보는 예선 후기에 대부분 나와 있다. 우리팀뿐만 아니라 다른 팀의 포스텍 분들도 지방에서 오시는 분들이 많아 전날에 미리 모여 숙소를 잡고 당일 아침 일찍 대회장으로 출발했다. 대회 목표는 작년 000102팀의 구성원 세 명이 모두 다른 팀 (강한친구대한국군, 당신을 대신해 UCPC 팀명을 정해드릴게요, 문제가 맛있어지는 주문) 으로 갈라져서 본선에 출전했는데, 이 중 1등을 하는 것을 목표로 하였다. 사실 객관적 전력은 세 팀 중 가장 열세였기에 저 목표만 이뤄도 괜찮은 기분으로 대회를 마칠 수 있을 것 같았다. 대회장은 대형 스코어보드가 없었다는 점만 빼면 작년보다 괜찮았던 것 같다. 자리가 끝쪽이라 나름 쓸 수 있는 공간이 많았던 점도 좋았다. 대회..

대회 후기/UCPC 2023.07.24

CodeChef Starters 99 (Div. 2)

밀린 후기가 있어 이것만 작성하고 UCPC 후기를 쓰려 한다. Div. 4에서 1등을 했더니 3은 칠 기회도 없이 Div. 2로 와버렸다. P1. Card Swipe (0:02) 잘 구현해주면 된다. P2. Exclusion-Inclusion (0:04) 작은 값부터 빼주면 된다. P3. Segment Three (0:19) 각 원소 당 더해야 하는 숫자는 최대 2이다. 저 쉬운 풀이가 있을 것 같기도 한데 잘 모르겠어서 \(O(27N)\) 3진법 Bit DP를 돌렸다. P4. Two Piles (0:32) 어디서 많이 본 문제라 바로 짰다. 대충 하나 고정하고 스위핑을 잘 해주면 된다. P5. Maximize Ones (0:54) 연산으로 바꿀 수 있는 수가 없는 경우나 모든 수가 같은 경우는 예외처리..

PS/CP 2023.07.23

오늘의 PS (25) - 230719 (제7회 천하제일 코딩대회 Open Contest)

적당한 시간대에 오픈컨이 있길래 가서 쳤다. 처음엔 사람들 닉네임이 무서워서 쫄았는데, 문제들이 어렵지 않아서 결과가 나름 괜찮게 나왔다. 따라서 후기를 써 보려 한다. 카테고리는 적절한 곳이 없어서 거의 1년 만에 오늘의 PS를 부활시켰다. 다음 글이 언제가 될진 잘 모르겠다.. 셋: https://www.acmicpc.net/category/detail/3626 A. 10! (0:01, +) *B4 구현해주면 된다. 0분대 솔브도 가능했을 것 같은데 똑똑한 방법을 찾지 못하고 계산기로 10!/6을 계산하느라 조금 늦었다. B. 고양이 카페 (0:06, +1) *S3 비슷한 문제를 굉장히 많이 봐서 바로 짰다. 제일 작은 원소부터 가능한 원소와 매칭시켜 주면 된다. upper를 lower로 잘못 써서 ..

PS/오늘의 PS 2023.07.20