QuizWit

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ QuizWit ] in KIDS
글 쓴 이(By): outsider (하얀까마귀)
날 짜 (Date): 2012년 09월 04일 (화) 오후 08시 59분 40초
제 목(Title): Re: 8x8 체스보드 위에 동전들과 두 죄수


체스보드 각 칸에 2진수로 번호를 매깁니다. 000000 부터 111111까지.

코드를 해독하는 두 번째 죄수의 입장에서 먼저 이야기하자면,

최상위 비트가 1인 칸의 동전들의 앞면의 갯수를 셉니다. 짝수면 0, 홀수면 1
두번째 비트가 1인 칸의 동전들의 ...
...
여섯번째 비트가 0인 칸의 동전들의 ...

이렇게 해서 여섯개의 비트를 조합해서 이를테면 C = 011010 같은 숫자를 
만들면 그게 이 체스판의 현재 값입니다.

첫번째 죄수는 동전을 하나만 뒤집어 이 값을 조작해서 간수가 찍은 칸을 
나타내는 숫자로 만들어야 합니다.

간수가 찍은 칸이 이를테면 S = 110011 이라고 치면 첫번째 죄수는 C xor S = 
101001 칸의 동전을 뒤집으면 C --> S 로 체스판의 상태를 바꿀 수 있습니다. 
끗.

물론 두 죄수는 암산 실력이 출중해야 하고 체스판의 위아래를 구분할 줄 
알아야 한다는 전제조건이 필요...


--
   @<
  //)
`//<_ 하얀까마귀 - http://outsider.egloos.com
[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.