기계
시간 제한1초메모리 제한1024 MB
기계에 배열 A를 넣으면 A[P[i]] XOR X 꼴의 배열 B가 나오므로, 알 수 없는 X 아래에서 사용 횟수 제한 안에 숨겨진 순열 P를 찾아야 합니다.
문제
고대 이집트의 컴퓨터 과학자들은 정수 배열을 섞는 기계를 여러 대 만들었다. 수천 년이 지나 고고학자들이 그중 한 대를 발견하고 조사했다.
이 기계는 정수 개로 이루어진 배열 를 입력으로 받는다. 기계에는 부터 까지 수의 내장 순열 가 있고, 기계는 이것으로 배열을 섞는다. 는 길이가 인 배열이며, 부터 까지의 정수가 각각 정확히 한 번씩 나타난다.
기계는 부식 때문에 수를 섞기만 하는 것이 아니라, 각 수와 미지의 수 의 XOR도 함께 계산한다. 기계는 길이가 인 배열 를 다음과 같이 돌려준다.
여기서 는 비트 단위 XOR 연산자다. 음이 아닌 정수 와 에 대해, 의 번째 비트는 와 의 번째 비트가 서로 다를 때에만 1이다. 는 고정된 값이어서 기계를 여러 번 사용해도 바뀌지 않는다.
고고학자들이 알고 싶은 것은 내장 순열 다. 기계를 사용해 를 구하라. 각 부분 문제는 기계를 사용할 수 있는 횟수와 배열 에 넣을 수 있는 가장 큰 수를 제한한다.
제한
- 각 에 대해
- 모든 에 대해