본문 바로가기

Competitive Programming/Codeforces

(33)
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
Codeforces Round #736 (Div. 1) Dashboard - Codeforces Round #736 (Div. 1) - Codeforces codeforces.com 떡락했다. 직전까지 애니 보다가 급하게 참가했는데, 그냥 마저 볼 걸 그랬다. Prob. 1A 인접한 사람 중 나보다 큰 사람이 있다면 무조건 죽는다. 그래서 나보다 큰 사람이 몇 명인지가 중요한데, 이를 set $N$개로 관리하다가 뇌절하고 단순히 명수만 세주는 식으로 코드를 갈아엎었다. Prob. 1B 2 이상의 수로 나누어 떨어지는 최대 구간을 구하는 문제로 치환할 수 있다. 투포인터로 풀어야 할 듯 한데, gcd를 롤백할 방법만 고민하다가 gcd 세그가 나중에 생각이 났다. 그런데 투포인터도 계속 잘못 짜고 bottom case를 잘못 넣어줘서 페널티를 엄청 쌓아버렸다. ..
Educational Codeforces Round 112 (Div. 2) Dashboard - Educational Codeforces Round 112 (Rated for Div. 2) - Codeforces codeforces.com 잘 풀고 있다는 느낌이 드는데 점수가 생각보다 오르지 않는다 ㅠ Prob. A $6:15=8:20=10:25$ 이므로 무엇을 선택할지는 딱히 중요하지 않다. $6$이상 짝수는 모두 만들 수 있으니 $n