페이지를 불러오는 중…
해결한 사람
1
명
정답률
100.00
%
시간 제한
5
ms
메모리 제한
1024
MB
Alan은 컴퓨터 보안을 전문으로 하는 회사에서 일한다. 그는 최근 자신이 훌륭하다고 생각하는 공개 키 암호 체계를 고안했는데, 이 체계에서 개인 키는 의 두 순열 와 로 구성된다. 그러면 공개 키 는 에 대해 로 주어진다. 표현식 은 와 를 으로 나눈 나머지가 같다는 뜻이다.
인 예로 다음을 생각해 보자.
\sigma &= (5,1,3,4,2), \text{and} \\ a &= (3,2,3,1,1).\end{aligned}$$ 여기서 예를 들어 $a_5 \equiv 1 \equiv 4 + 2 \equiv \pi_5 + \sigma_5 \pmod{5}$이며, $\pi$와 $\sigma$의 모든 원소는 각각 $\{1, \dots, 5\}$이고, 각 수는 정확히 한 번씩 등장한다. Alan의 동료들은 공개 키에 대응하는 아무 개인 키나 찾아내면 체계가 무너지므로 이 체계의 보안성에 의문을 품고 있다. 이들을 돕는 것이 여러분의 과제다. $n$과 수열 $a = (a_1, \dots, a_n)$이 주어질 때, 각 $i$에 대해 $\pi_i + \sigma_i = a_i \pmod{n}$을 만족하는 두 순열 $\pi$와 $\sigma$가 존재하는지 판별한다. 그러한 순열 쌍이 여러 개라면 그중 아무거나 출력한다.첫째 줄에는 수열의 길이 가 주어지고 순열이 적혀 있다. 둘째 줄에는 을 만족하는 정수 가 주어진다. 길이 는 을 만족한다.
해가 없다면 ```impossible`''을 출력한다. 해가 있다면 그중 아무거나 출력하며, 두 순열을 각각 한 줄에 작성한다.
5
3 2 3 1 1
1 4 3 5 2
2 3 5 1 4
4
3 1 1 4
impossible
KTH
로그인 상태를 확인하는 중입니다.