daan   2년 전

문제 풀이에 영향은 없을 것 같지만 혼동이 있을 것 같아 적어봅니다.

출력 설명 부분에 "가능한 정답이 여러가지인 경우에는 아무거나 출력한다."라고 쓰여있습니다.

해당 문장을 삭제하는 것이 좋다고 생각합니다.

가능한 정답은 유일합니다.

항상 정답이 존재하는 경우에만 입력으로 주어지므로 수열 내의 특정한 수 x를 고를 경우,

수열은 { (x/2 존재) xor (3x 존재) } or { (2x 존재) xor (x/3 존재) }를 만족해야 합니다. (만족하지 않는 경우 수열엔 x뿐)

위의 조건을 만족하는 수가 존재한다면 수의 위치는 유일합니다. (바로 앞 또는 바로 뒤)

왜냐하면, 2와 3은 서로소이고, 연산은 3으로 나누거나 2로 곱하는 것 뿐이기 때문입니다.

ex)

나4곱2문제였다면 원소들 사이 순환이 생기기 때문에 정답은 유일하지 않다.

나3곱3문제인경우도 같은 이유로 정답이 유일하지 않다.

ai4youej   2년 전

가능한 정답이 유일하다는 사실 자체가 문제 풀이에 대해서 스포일러를 줄 수 있다고 생각합니다.

herdson   2년 전

위상 정렬로 푸는 어떤 문제 역시 실제로 어떤 상태에 도달할 수 없음에도 불구하고 그 상태일 때 무엇을 하라는 요구가 적혀있습니다.

이는 문제 풀이를 하면서 충분히 걸 수 있는 낚시라고 생각됩니다.

djm03178   2년 전

"답이 유일함을 알아내는 것"도 문제의 일부입니다.

daan   2년 전

충분히 걸 수 있는 낚시이고, 문제의 일부일 수 있다는 것
위 세분 덕분에 하나 더 배워갑니다 감사합니다!!

댓글을 작성하려면 로그인해야 합니다.