2020.02.24 저녁에 열린 Codeforces Round #624 (Div. 3) 풀이를 해보려합니다.
저는 A,B,C밖에 풀지 못했고 자세한 이야기는 풀이 다음에 적어놓겠습니다.
대회 문제 목록: https://codeforces.com/contest/1311
Dashboard - Codeforces Round #624 (Div. 3) - Codeforces
codeforces.com
대회 에디토리얼: https://codeforces.com/blog/entry/74224
Codeforces Round #624 (Div. 3) Editorial - Codeforces
codeforces.com
저는 에디토리얼은 최대한 나중에 보려하는 편이라 아직 보지 않았고, 일단 제 풀이를 정리하려 합니다.
코드들은 모두 깃헙 링크로 남겨놓겠습니다.
A. Add Odd or Subtract Even
그냥 두 숫자의 대소 비교, 숫자 차이를 확인하면 됩니다.
모든 경우에 한해서 답이 0,1,2 중 1개로 결정된다는 것을 알면 바로 풀 수 있었습니다.
제출 코드: https://github.com/shinkeonkim/Today_PS/blob/master/codeforces/Round%20%23624/A.p
B. WeirdSort
개인적으로 좀 많이 고민한 문제입니다.
생각해보니, 문제에서 주어진 p 배열에 있는 숫자 중 하나를 i라 한다면, i와 i+1번째에 있는 숫자는 swap할 수 있다는 것입니다. 만약에 이 swap 관계가 계속 끊기지 않고 이어진다면 그 구간안에 있는 숫자들은 정렬이 가능합니다. 그리고 만약 swap 관계들을 이어놓은 구간들을 각각 정렬을 하고나서 모든 숫자들이 정렬되어 있는 상태라면 이는 정렬가능하다는 것이고 아니라면 정렬 불가능이라는 것일 겁니다.
제출 코드: https://github.com/shinkeonkim/Today_PS/blob/master/codeforces/Round%20%23624/B.cpp
C. Perform the Combo
prefix array, dictionary(map), sort을 활용하면 어렵지 않게 해결할 수 있습니다. 따로 설명할 것은 없을 것 같고 아래 코드에서 활용한 몇 가지 꼼수들은 나중에 한번 제대로 다뤄볼려 합니다.(Ex. try-except로 dictionary에 이 원소가 있는지 확인하는 방법)
제출 코드: https://github.com/shinkeonkim/Today_PS/blob/master/codeforces/Round%20%23624/C.py
솔직히 대회 결과는 딱히 좋지 않았습니다.
1. 대회 시간 중 30분을 제출할까 말까 고민을 하다가 시작을 해서 3문제밖에 풀지 못했고
2. 오랜만에 코드포스라 문제를 해석하고 코드를 빠르게 작성하는 게 익숙치않았습니다.
3. 본계와 부계 사이에는 무슨 계정으로 제출할지 고민했고 부계로 하면서 대충대충 하게 된 것 같습니다.
프로필(망한 레이팅 살리기 프로젝트 중):
https://codeforces.com/profile/singun119
singun119 - Codeforces
codeforces.com

아무튼, 이제 한번 제대로 떨어져봤고 이제 올라가기만 하면 되니 막무가내로 계속 div3, div2를 참가해보겠습니다.
Rmx
'Problem Solving > Codeforces' 카테고리의 다른 글
Codeforces Round # 634(Div. 3) Solution (2) | 2020.04.15 |
---|---|
Codeforces Round #627 (Div. 3) Solution (0) | 2020.03.13 |