본문 바로가기

Competitive Programming

(36)
Educational Codeforces Round 116 (Div. 2) Dashboard - Educational Codeforces Round 116 (Rated for Div. 2) - Codeforces codeforces.com 3주 만의 코포 복귀 & 3달 만의 퍼플 복귀 & 10달 만의 +100 이건 아니었다 시간이 맞지 않아 3주 동안이나 코포를 못하고 있었고 이날도 분명 힘들거라 생각했었다. 그런데 버스 기사님이 무리를 하셨는지, 도착 예정 시간이 아슬아슬하게 들어와서 지하철 안에서 노트북 세팅을 끝내 놓고 집으로 뛰어들어왔다. 이때가 대충 33분. 손만 대충 씻고 코포에 빠르게 접속하니 대회가 바로 시작... 그래서 외출 상태 그대로 코포를 쳤고, 결과는 성공적이었다. Prob. A ab, ba의 개수는 a, b 묶음이 몇 번 변하는지에 영향을 받는데, 대충..
AtCoder Beginner Contest 222 Exawizards Programming Contest 2021(AtCoder Beginner Contest 222) - AtCoder AtCoder is a programming contest site for anyone from beginners to experts. We hold weekly programming contests online. atcoder.jp 앳코더 첫 참가! D를 풀었을 때 엄청 빨랐다고 생각했는데 의외로 순위가 높지 않아서 놀랐다. 앳코더에도 잘하는 사람들이 많나 보다. Prob. A 브론즈 5 구현. Prob. B 브론즈 3 구현. B가 이렇게 쉬워도 되나 싶어서 문제를 3번 읽었다. Prob. C 실버 3 구현. 범위가 작아서 상수 신경 쓰지 않고 구현했다. ~ Prob...
Codeforces Round #747 (Div. 2) Dashboard - Codeforces Round #747 (Div. 2) - Codeforces codeforces.com 나름 성공적인 코포 복귀전이었지만... 아쉬움이 너무 많이 남아, 할 일을 다 제쳐두고 후기를 쓰고 있다. Prob. A $\sum_{1-n}^{n-1}=0$ 임을 이용하면 $l=1-n$, $r=n$. Prob. B $k$를 2진법으로 나타냈을 때 켜진 비트에 대해서 $n$의 거듭제곱을 더한다. Prob. C 답은 $0$또는 $1$또는 $2$이다. $0$일 때를 $O(N)$에, $1$일 때를 $O(NlogN)$에 판별해준다. Prob. D $i$와 $j$는 $c$가 $imposter$일 때 다른 팀, $crewmate$일 때 같은 팀이다. $dfs$를 돌면서 컴포넌트 별로 묶어주..
Codeforces Round #742 (Div. 2) Dashboard - Codeforces Round #742 (Div. 2) - Codeforces codeforces.com 점수가 오르기는 했지만 여러모로 아쉬운 라운드였다. Prob. A 'U', 'D' 만 서로 바꿔준다. Prob. B $0$ ~ $a-1$ 을 모두 사용하면 최대 두 개를 더 사용해서 $b$ 를 만들 수 있다. 이제 적당히 case-work 해주면 되지만 xor을 naive하게 계산하면 TLE를 받는다. 아마 누적 xor을 전처리하는 것이 정해인 것 같고, 나는 그걸 생각 못해서 $n=4k+3$ 꼴마다 누적 xor이 0이 된다는 이상한 성질을 관찰하여 해결했다. 이때 시간이 꽤 지나서 2700등 정도까지 떨어졌었다. Prob. C 인접한 자리끼리는 영향을 주지 못하므로 홀수 자리만..
Codeforces Round #737 (Div. 2) Dashboard - Codeforces Round #737 (Div. 2) - Codeforces codeforces.com 퍼플은 과분한 점수였나 보다. 아직 대회 중이지만 D가 많이 풀리지 않아 그냥 탈주한다. Prob. A 두 그룹의 평균의 합을 최대화하는 문제. 가장 큰 원소만 따로 빼주는 것이 최적이다. Prob. B 틀린 풀이로 3틀 꼬라박고 멘탈이 나갔다. 이게 왜 틀리는지는 아직도 모르겠다. 그냥 코드 갈아엎고 정렬 + lower_bound 박으니 풀렸다. 이 와중에 카운팅 착각해서 1틀 추가. Prob. C 홀수/짝수 나눠서 각각 식 정리 조지면 나온다. 그런데 cout