Processing math: 100%
본문 바로가기

Competitive Programming/Codeforces

(38)
Teza Round 1 (Codeforces Round 1015, Div. 1 + Div. 2) https://codeforces.com/contest/2084  두 시간의 지옥을 경험한 끝에 E를 겨우 풀면서 마이너스 델타를 면했다. 요즘 왜인지는 모르겠으나 구현력이 상승하면서 코드 짜는 게 시원시원해졌다.  Prob. A홀수는 쉽고 짝수는 믿자. Prob. B별 생각 없이 정렬을 하고 보니까 풀이가 보였다. Prob. C홀수일 때 가운데 처리해 주고, 나머지를 그냥 점대칭으로 만들어주면 된다. Prob. D대충 체커를 생각해 보면 길이가 K인 구간들로 같은 수들을 커버하려고 할 거니까 그게 힘들게끔 같은 수의 간격을 K 이상으로 만들어주면 된다. 문제 상황이 너무 헷갈렸다. Prob. E하아... 일단 특정 mex 값의 경우의 수를 구하는 건 어려워 보이니까 mex가 특정 값 k보다 ..
Ethflow Round 1 (Codeforces Round 1001, Div. 1 + Div. 2) https://codeforces.com/contest/2062  최근 연속으로 레드 퍼포를 내면서, 벽처럼 느껴졌던 찐렌지 달성에 성공했다. 조금 더 해봐야 알겠지만 이제야 뭔가 혈이 뚫린 것 같아 행복하다. 자세한 이야기는 레드를 달성하면.. 풀어보고 싶다. Prob. A1의 개수는 최대 1씩 줄어드니 부분 수열의 길이를 그냥 1로 잡으면 된다. Prob. B손으로 수열을 여러 개 쓰고 직접 해보면서 규칙을 찾았다. 결국 양옆으로 왔다 갔다를 할 수 있으면 된다. Prob. C수열을 여러 번 뒤집어도 바뀌는 건 결국 전체의 부호밖에 없다. 그러니 다 만들어보고 절댓값의 최댓값을 구하면 된다. int를 넘어갈 거란 생각을 못 해서 한 번 틀렸다. Prob. D그냥 1을 루트로 잡고 트리 디피를 하면서 ..
울고 싶다 ㅜㅜ
Codeforces Round 942 (Div. 1) Dashboard - Codeforces Round 942 (Div. 1) - Codeforces codeforces.com 사실 전 글은 쓸 생각이 없었는데, 이번 대회를 치고 이 글을 쓰기 위해 전 것도 작성했다. 하아 Prob. A원소의 최소 개수를 최대화해야 함은 직관적으로 알 수 있다. 그리고 예제를 통해 그 원소의 개수의 역순으로 배열하는 것이 최적임도 알 수 있다. 그래서 이를 이분탐색 등을 이용하여 잘 구현해주면 되는데, 자꾸 틀린다. 도저히 틀린 부분이 안 보여서 B를 다 풀고 왔더니 이분탐색 시작할 때 천장 값을 너무 크게 잡은 게 오버플로우를 유발하는 것 같았고, 실제로 그 부분만 고치니 맞았다. 이런 실수 되게 오랜만에 하는 것 같다. Prob. B1식을 정리해보면 나이브가 루트 시..
Codeforces Round 941 (Div. 1) Dashboard - Codeforces Round 941 (Div. 1) - Codeforces codeforces.com 진짜 오랜만에 코포 포스팅이다. 현생에서 큰 웨이브를 넘겼고, 슬슬 복귀를 해야겠다 싶어서 가볍게 쳐봤다. Prob. A깊이 생각해보지 않아도, 먼저 선택권이 주어지는 쪽에게 우세가 있다는 것을 알 수 있다. 이를 확인하기 위해 ai를 정렬하고 인접한 값들의 차를 보면 된다. Prob. B일단 이진법을 써야 함은 자명하고, 여기서 열심히 구성해주면 된다. 나는 k의 MSB를 x라고 했을 때, x를 빼고 kx를 넣고 k+1을 넣고 k+2x를 넣었다. 딱히 전략은 없고 k가 만들어지는 것을 피하면서 최대한 많은 수를 커버할 수 있도록, 그리고 현재 못 ..