Skip to content

Commit

Permalink
add editorial by rustiebeats (#27)
Browse files Browse the repository at this point in the history
* add editorial by rustiebeats

* add editorials by rustiebeats

---------

Co-authored-by: jinsik park <[email protected]>
  • Loading branch information
rustiebeats and pjshwa authored Nov 1, 2024
1 parent 6fcf0bd commit ded32fb
Show file tree
Hide file tree
Showing 9 changed files with 68 additions and 0 deletions.
6 changes: 6 additions & 0 deletions editorials/coloring.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
contest: "2024-07"
index: 0
---

출제자의 풀이를 소개합니다. $N > M$이 되도록 보드를 돌린 후에, 색이 많은 순서대로 정렬했을 때 일반성을 잃지 않고 $R>G>B$라고 가정하면, 체스판의 흰 칸 ($1, 1$)부터 R, B, G 순으로 색칠하면서 꽉 찼을 경우엔 검은 칸을 색칠해주면 됩니다.
6 changes: 6 additions & 0 deletions editorials/eve-psyche-bluebeard.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
contest: "2023-06"
index: 0
---

$\textrm{mex}$ 연산의 결과로 나올 수 있는 건, $0$ 두 개의 연산으로 나오는 $1$, $0$과 $1$의 연산으로 나오는 $2$, $0$과 $2$ 이상의 수의 연산으로 나오는 $1$, 그리고 이외의 경우에 나오는 $0$입니다. 따라서 $0$, $1$, 그 이외의 수들의 등장 횟수를 저장해 두면 문제를 해결할 수 있습니다.
6 changes: 6 additions & 0 deletions editorials/find-the-average.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
contest: "2023-05"
index: 1
---

각 간선이 세어지는 횟수는 $2 \times (N-1)!$로 동일하고 모든 경우인 $N!$으로 이를 나누면 각 간선의 길이에 $2/N$을 나눈 값을 모두 더하면 답임을 알 수 있습니다.
14 changes: 14 additions & 0 deletions editorials/finding-array-tutorial.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
contest: "2023-12"
index: 5
---

원본 수열 $A$에서 $A_i$가 고유한 원소이기 위해서는 부분 배열 $[A_1, A_2, \cdots, A_{i-1}]$과 $[A_{i+1}, \cdots, A_{N-1}, A_N]$에 $A_i$와 같은 값이 존재하지 않아야 합니다.

배열 $p_i$에 "$? \ 1 \ i$" 질문에 대한 답을 저장해 둡시다.

배열 $s_i$에 "$? \ i \ N$" 질문에 대한 답을 저장해 둡시다.

$A_i$가 고유한 원소이기 위한 필요충분조건은 $p_i = p_{i-1}+1$과 $s_i = s_{i+1}+1$을 동시에 만족하는 것입니다.

따라서 총 $2N$개의 질문으로 문제를 해결할 수 있습니다.
8 changes: 8 additions & 0 deletions editorials/knight-cruising.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
contest: "2024-08-open"
index: 4
---

$\textrm{mod}$ $2$를 생각해보면 세 개의 벡터 <$1,1,0$>, <$1,0,1$>, <$0,1,1$>의 선형 결합으로 주어진 벡터를 만들 수 있는 지 묻는 질문입니다.

이 점을 이용해 연립방정식을 풀어도 되고, 잘 관찰하면 $(x+y+z)$의 홀짝성이 답과 관련이 있음을 알 수 있습니다.
8 changes: 8 additions & 0 deletions editorials/normalize.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
contest: "2024-09"
index: 2
---

누가 무엇을 가져갈 지, 각자 자기가 가져갈 돌무더기를 무슨 순서로 가져갈 지 정하면 순열 $T$가 고정됩니다.

따라서 전체의 절반을 가져가기 위해 배낭 문제를 해결한 뒤, 한 플레이어가 $cnt$번 만에 가져간다면, 상대가 $N-cnt$번에 거쳐 가져가므로 $(cnt)! \times (N-cnt)!$를 곱하면 됩니다.
6 changes: 6 additions & 0 deletions editorials/travel-odd.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
contest: "2023-11"
index: 0
---

각 여행지의 좌표의 $x+y$의 홀짝성을 생각해보면, 모든 여행지가 홀짝성이 같다면 불가능하고, 이외의 경우에는 홀수인 여행지를 모두 출력한 이후에 짝수인 여행지를 모두 출력해주면 답을 쉽게 구성할 수 있습니다.
6 changes: 6 additions & 0 deletions editorials/tricknology.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
contest: "2023-07"
index: 1
---

소수의 성질을 이용하면 연속한 두 수의 합이 소수인 경우만 확인하면 됨을 알 수 있습니다. 다만 쿼리가 여러 개이므로 해당하는 범위 소수가 몇개인 지 미리 전처리를 해야 합니다. 이는 에라토스테네스의 체와 크기가 $50$만인 누적 합 배열을 이용하면 쉽게 구현할 수 있습니다.
8 changes: 8 additions & 0 deletions editorials/tug-of-war.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
contest: "2024-02"
index: 1
---

답이 단조성을 갖는다는 점을 이용합니다. 팀워크 수치의 최솟값이 가질 수 있는 최댓값을 파라메트릭 서치로 찾을 것인데, 결정 함수는 다음과 같습니다: 답보다 작은 가중치의 간선으로만 이루어진 그래프가 이분 그래프인가?

따라서 총 시간복잡도는 $\mathcal{O}({N^{2} \times \log{A}})$입니다.

0 comments on commit ded32fb

Please sign in to comment.