Approach
잘 생각해보면 3과 2는 서로소이므로, 배타적으로만 존재가능하다.
예를 들어 v[i]라는 숫자가 존재한다고 했을 때, v[i] / 3이 존재하거나 v[i] * 2만 존재해야 한다.
왜냐하면, 3과 2는 서로소이기 때문에 3으로 나눈 것을 아무리 2를 곱해도 절대로 3으로 나눈 것을 커버할 수 없다.
추가적으로 수열의 크기가 N이기 때문에, v[0]으로 나올 수 있는 후보를 하나씩 체크해서 가능한 경우를 모두 확인해주면 된다.
이때, 주어진 수에 v[i] / 3이나 v[i] * 2가 존재하는지를 쉽게 파악하기 위해서 set 자료구조를 활용하였다.
시간 복잡도는 $O(n^2logn)$이므로 시간 안에 충분히 통과한다.
Code