[ QuizWit ] in KIDS 글 쓴 이(By): taiyou (whoami) 날 짜 (Date): 2007년 10월 6일 토요일 오후 10시 30분 28초 제 목(Title): Re: [Q] 프리셀에서 1+sum(1:m)이지 않나요? 예로, 1+sum(1:m) != 2^m이 되는 최소의 m=3이고, 따라서 n=0, m=3일때 과연 8장의 카드를 옮길 수 있는지를 확인해보면 될텐데 말이죠. 혹시 하노이처럼 작은 수의 카드는 반드시 위에 쌓을수 있다고 생각하신건 아닌지? 연속된 카드가 아니라 말이죠 from column {1,2,3,4,5,6,7,8} -> using m0, m1, m2 -> to column from column {8} -> m0 { 1,2,3}, m1 {4,5}, m2 {6} -> to column {7} 이런 식으로 7장밖에 못 옮길듯 싶은데요? 다른 시퀀스는 못 찾겠네요. 어디 맹점에 빠져있는건 아닌지 모르겠네요. 제가 저 문제를 보고 생각한 과정은, n의 윗 영역이 있다고 했을때, 바로 옮길수 있는 카드의 수는 n+1이고, 따라서 n+1장의 카드를 1개의 set으로 보고, 첫번째 빈 column에 1 set을 옮긴 후, 다음 빈 column에 1 set을 옮기고.. 모든 빈 column을 다 쓰고 난 경우에는 역순으로 마지막으로 옮긴 set 위에 다시 쌓으면, 그 마지막 set은 m set만큼이 쌓이게 되죠. 그 순간 비어있는 column은 m-1이 되고, 따라서 m column을 모조리 쓰기 위해서는 sum(1:m)의 set이 필요하고, m=0이 되어버린 경우는 바로 from column에서 to column으로 1 set이 이동 가능하니까, 결국 1+sum(1:m)의 set이 이동 가능하고, 결국 (n+1)*(1+sum(1:m))이 된겁니다만. |