코포랑 앳코더가 같이 있었는데, 코포가 테크노컵+앳코더 블루까지 레이팅이 얼마 남지 않았었기 때문에 앳코더를 쳤다. 결과적으로는 괜찮은 선택이었던 것 같다.
A. Last Letter (0:00, +) *6
B. Go Straight and Turn Right (0:02, +) *30
생략
C. Yamanote Line Game (0:04, +) *165
앳코더에서는 처음 보는 인터랙티브였다. 하지만 인터랙티브인게 별 의미가 있는 수준은 아니었고, set등을 이용해 구현하면 쉽게 맞을 수 있다.
D. Swap Hats (0:08, +) *165
D번 정도면 꽤 귀찮다는 인식이 있었는데, 너무 쉬워서 놀랐다. 두 배열의 inversion parity가 일정해야 하는데, n이 3이니 대충 if문으로 구현해주면 된다.
E. King Bombee(0:21, +) *1125
\(N\)이 작으므로 \(O(N^2)\) 풀이를 시도해볼 수 있다. 각 정점을 \(K+1\)개 만들어주면 그래프가 DAG로 표현되고, 따라서 DP를 적용할 수 있다. DP식의 정의는 다음과 같다.
\(DP[i][j][k]\) = \(i\)번 정점을 \(j\)번째 순서로 방문했을 때, \(X\)번 정점의 방문 횟수의 홀짝이 \(k\)인 경우
전이는 잘 해주면 되며, 답은 \(DP[T][K][0]\)이 된다.
F. Shortest Good path (0:47, +) *1661
E와 거의 유사한 방법을 사용하면 되는데, 각 정점에 대해 state별로 정점을 하나씩 만들어주는 것으로 그래프를 모델링할 수 있다. 이 때 모든 간선의 가중치가 1이기 때문에 BFS를 사용하면 되는데, 나는 불안해서 그냥 다익스트라 썼다.
G. Construct Good path (X) *2117
BFS하는 방법을 잘 찾아서 잘 돌리면 된다고 하는데, 나는 센트로이드에 꽂혀서 50분동안 뻘짓했다..
'PS > CP' 카테고리의 다른 글
AtCoder Beginner Contest 246 (0) | 2022.04.03 |
---|---|
Educational Codeforces Round 125 (Rated for Div. 2) (0) | 2022.03.24 |
Codeforces Round #775 (Div. 1, based on Moscow Open Olympiad in Informatics) (0) | 2022.03.07 |
Educational Codeforces Round 122 (Rated for Div. 2) (0) | 2022.02.01 |
Codeforces Round #741 (Div. 2) (0) | 2021.08.27 |