이 게임의 판은 모두 풀립니다
프리셀 마니아에서 열려 있는 판은 #1부터 #20,000까지이고, 모두 게임에 들어 있는 솔버가 실제로 풀어 본 뒤에 열었습니다. 코드에 적힌 '풀 수 없는 판' 목록은 비어 있습니다. 솔버가 정해진 탐색 예산 안에 결론을 내지 못한 번호 11개는 닫지 않고 다른 배치로 바꿔 넣었기 때문에 번호 사이에 빈 곳이 없습니다.
번호는 윈도우 프리셀의 번호와 다릅니다. 판은 freecell:deal:<번호>라는 문자열에서 만든 시드로 섞기 때문에, 여기의 #617은 마이크로소프트의 #617과 다른 판입니다. 대신 이 사이트에서 #617을 여는 사람은 누구나 같은 배치를 봅니다. 52장을 왼쪽 열부터 한 장씩 돌려 놓으므로 앞의 네 열은 7장, 뒤의 네 열은 6장으로 시작합니다.
그러니 판이 꼬였다면 원인은 언제나 지금까지 둔 수 어딘가에 있고, 되돌리기로 그 자리까지 돌아갈 수 있습니다.
묶음 이동 공식
프리셀 규칙에는 한 번에 한 장씩 옮기는 수밖에 없습니다. 다섯 장짜리 묶음을 끌어다 놓으면 화면이 그 과정을 대신 해 줄 뿐입니다. 빈 프리셀과 빈 열에 카드를 한 장씩 덜어 두고, 묶음의 맨 아래 카드를 옮긴 다음, 덜어 둔 카드를 다시 그 위에 쌓습니다. 그래서 한 번에 옮길 수 있는 장수는 덜어 둘 자리가 몇 개인지로 정해집니다.
옮길 수 있는 최대 장수 = (빈 프리셀 + 1) × 2^(빈 열 수)
- 빈 프리셀 4칸, 빈 열 없음: 5장
- 빈 프리셀 3칸, 빈 열 없음: 4장
- 빈 프리셀 없음, 빈 열 없음: 1장
- 빈 프리셀 4칸, 빈 열 1개: 다른 열로는 10장, 그 빈 열로는 5장
- 빈 프리셀 4칸, 빈 열 2개: 다른 열로는 20장, 빈 열 하나로는 10장
화면에서 한도 읽기
위 목록의 마지막 두 줄에서 많이들 걸립니다. 목적지가 빈 열이면 그 열은 덜어 둘 자리로 동시에 쓸 수 없으므로 셈에서 빠집니다. 게임도 정확히 이 규칙으로 판정하고, 손으로 한 장씩 옮겨서는 할 수 없는 이동은 받아 주지 않습니다.
이 계산을 머릿속으로 할 필요는 없습니다. 카드를 두 장 이상 집으면 몇 장을 골랐는지, 최대 몇 장인지, 빈 열로는 몇 장인지, 어느 프리셀과 열이 비었는지가 한 줄로 뜹니다. 이동이 거절되면 '선택 6장 / 이 자리 최대 5장 · 빈 프리셀 4, 빈 열 0'처럼 까닭을 알려 줍니다.
원리를 눈으로 볼 수도 있습니다. 카드 속도를 '천천히'나 '보통'으로 두면 묶음 이동이 실제 낱장 이동으로 풀려서 움직이고, '빠르게'와 '즉시'에서는 묶음이 통째로 날아갑니다. 빈 프리셀 네 칸으로 다섯 장을 옮기면 낱장으로는 아홉 번(프리셀로 넷, 목적지로 하나, 다시 넷)이고, 빈 열 하나를 거쳐 열 장을 옮기면 27번입니다. 그래도 이동 수에는 끌어다 놓은 한 번이 한 수로 들어갑니다.
빈 열이 프리셀보다 비싼 이유
공식에서 프리셀은 더해지고 빈 열은 곱해집니다. 프리셀 네 칸이 비어 있으면 5장인데, 열 하나를 비우면 10장이 됩니다. 프리셀 두 칸이 찬 답답한 판에서도 빈 열 하나가 생기면 한도가 3장에서 6장으로 늘어납니다.
담을 수 있는 양도 다릅니다. 프리셀 한 칸에는 카드 한 장만 들어가지만, 빈 열에는 어떤 카드든, 규칙에 맞는 어떤 묶음이든 놓을 수 있고 그 위로 계속 쌓을 수도 있습니다. 다만 짐을 놓아 둔 열은 더 이상 곱하기 노릇을 하지 못하므로, 지금 꼭 필요한 카드를 꺼낼 때만 묶음을 내려놓는 편이 좋습니다.
판 초반에 들일 만한 습관이 있습니다. 카드가 가장 적은 열을 찾아 그 열의 카드가 각각 어디로 갈 수 있는지 따져 봅니다. 다른 열 위, 파운데이션, 프리셀 중 어딘가에 모두 갈 곳이 있다면 그 열을 비우는 것이 대개 판에서 가장 남는 투자입니다. K는 따로 봐야 합니다. K는 다른 카드 위에 올라갈 수 없어서, 한 번 움직이면 빈 열에만 놓입니다. 처음부터 열의 맨 안쪽에 깔린 K는 이미 제자리에 있는 셈이지만, 열의 바깥쪽에 깔린 K는 언젠가 빈 열 하나를 차지하게 됩니다.
A와 2부터 꺼낸다
A를 올리려면 그 위를 덮은 카드가 전부 어딘가로 가야 합니다. A마다 덮고 있는 카드가 몇 장인지 세어 보고, 덜 덮인 것부터 꺼내세요.
쉬운 부분은 게임이 맡습니다. 드러난 A는 곧바로, 드러난 2는 같은 무늬의 A가 올라가 있으면 저절로 파운데이션에 올라갑니다. 그보다 높은 카드는 반대색 두 무늬가 이미 한 끗수 아래까지 올라가 있을 때만 저절로 올라갑니다. 붉은 5는 ♣4와 ♠4가 모두 올라간 뒤에야 올라가는데, 그전에는 검은 4가 그 붉은 5 위에 얹혀야 할 수도 있기 때문입니다. 자동으로 올라간 카드도 이동 수에 들어가며, 누구에게나 똑같이 적용됩니다.
자동 규칙이 조심스러운 만큼 손으로 올려야 할 때도 있습니다. 반대색에서 한 끗수 낮은 카드가 그 카드를 더는 필요로 하지 않는다고 확신할 때 올리세요. 프리셀에서는 파운데이션에 올린 카드가 다시 내려오지 않으므로, 판단이 틀렸다면 되돌리기 말고는 돌아갈 길이 없습니다.
첫 수 전에 이어지는 수를 그려 본다
아무것도 건드리기 전에 판을 먼저 읽습니다. A와 2가 어디 있는지, 어느 열이 짧은지, K가 어디 깔려 있는지 봅니다. 그다음 '이 카드를 옮기면 저 카드가 드러나고, 그 카드는 저 열로 간다'처럼 여러 수를 한 줄로 이어서 계획하고, 그 줄이 끝났을 때 빈 자리가 처음보다 늘어나는지 확인합니다.
색을 엇갈려 쌓은 묶음은 나중에 옮길 수 있어야 쓸모가 있습니다. 긴 묶음이 A를 깔고 앉아 있으면, A에 닿으려면 그 묶음을 통째로 옮겨야 하고 그게 되는지는 공식이 정합니다. 카드를 놓을 자리가 두 곳이라면 낮은 카드를 덮지 않는 쪽을 고르세요.
카드를 톡 치면 정해진 순서로 갈 곳을 고릅니다. 파운데이션이 먼저이고, 다음은 카드가 있는 열(왼쪽부터), 그다음 빈 열, 프리셀은 맨 마지막입니다. 같은 카드를 한 번 더 치면 다음 후보 자리로 갑니다. 놓을 자리가 중요할 때는 톡 치지 말고 끌어다 놓으세요. 키보드로는 1~8이 열, Q W E R이 프리셀 칸, H가 파운데이션이고, 같은 키를 두 번 누르면 게임이 자리를 고르며, Z는 되돌리기입니다.
프리셀은 언제 쓰나
프리셀에 카드를 한 장 넣을 때마다 옮길 수 있는 장수가 줄어듭니다. 빈 칸이 넷에서 셋이 되면 한도가 5장에서 4장으로, 빈 열이 하나 있을 때는 10장에서 8장으로 떨어집니다. 다음 중 하나를 얻을 때 프리셀을 쓰는 값을 합니다.
- 바로 파운데이션으로 갈 카드가 드러난다. 그 카드를 시작으로 여러 장이 줄줄이 올라가면 더 좋다.
- 열 하나를 마저 비운다. 빈 열은 프리셀 한 칸 값을 몇 배로 돌려준다.
- 묶음을 제자리에 내려놓게 해 주고, 프리셀에 넣은 카드가 다음에 어디로 갈지도 이미 알고 있다.
프리셀을 비워 줄 카드를 먼저 정한다
카드를 프리셀에 넣기 전에 무엇이 그 카드를 꺼내 줄지 말할 수 있어야 합니다. 프리셀에 넣은 붉은 6은 드러난 검은 7이 있거나, 같은 무늬가 5까지 올라가야 나올 수 있습니다. 둘 다 떠오르지 않으면 그 칸은 오래 찬 채로 남는다고 보는 편이 맞습니다. 프리셀 네 칸이 다 차고 빈 열도 없으면 한 번에 딱 한 장만 옮길 수 있습니다.
자리가 모자라 묶음 이동이 거절되면, 게임이 '연습 준비'를 제안할 때가 있습니다. 한 장짜리 열의 카드나 프리셀에 있는 카드 하나를 파운데이션이나 다른 열로 먼저 옮기면 같은 묶음이 들어간다는 안내입니다. 오늘의 판에서는 이 제안이 나오지 않습니다.
막다른 판 알아보기
'더 둘 수 있는 수가 없습니다'는 둘 수 있는 수가 하나도 없을 때만 뜹니다. 프리셀이 한 칸이라도 비어 있으면 카드를 거기에 넣을 수 있으니, 이 안내는 네 칸이 모두 차고 어디에도 쌓을 수 없을 때에야 나옵니다. 판은 그보다 훨씬 전에 이미 끝나 있을 수 있습니다. 카드는 계속 움직일 수 있어도 어떤 순서로 두어도 풀리지 않는 상태입니다.
이런 신호가 보이면 멈추는 편이 낫습니다. 프리셀 네 칸이 다 찼고 둘 수 있는 수가 같은 카드를 열 사이에서 오가게 하는 것뿐일 때, 꼭 필요한 낮은 카드가 옮길 수 있는 한도보다 긴 묶음 밑에 깔려 있을 때입니다. 이럴 때는 계속 두는 것보다 마지막 갈림길까지 되돌리는 쪽이 빠릅니다.
완전히 막히면 단추 두 개가 나타납니다. '이전 선택점'은 최근 여덟 수를 보여 주고 각 시점의 판을 미리 보여 주며, 미리보기 동안 시계가 멈춥니다. '같은 판 다시'는 그 번호를 처음부터 다시 엽니다. 다만 한 수라도 둔 판을 버리면 연승에서는 진 판으로 칩니다.
되돌리기와 힌트
프리셀의 되돌리기에는 횟수 제한이 없습니다. 되돌린 수는 기록과 이동 수에서 통째로 빠지고, 그 수 뒤에 저절로 올라간 카드도 함께 내려옵니다. 시계는 그대로 흐르므로 되돌리기는 이동 수 대신 시간을 씁니다.
💡 힌트 단추를 누르면 솔버가 지금 판을 풉니다. 화면과 따로 도는 작업자(Web Worker)에서 길어야 4초쯤 찾고, 찾은 풀이의 첫 수를 알려 줍니다. 해당 카드에 금빛 테두리가 생기고 '힌트: 4열 ♣5 → 파운데이션' 같은 안내가 뜹니다. 그 수를 두면 판은 여전히 풀 수 있습니다. 다만 솔버는 가장 짧은 풀이가 아니라 빨리 찾을 수 있는 풀이를 찾으므로, 힌트의 수가 가장 효율적인 수라는 보장은 없습니다.
힌트가 더 쓸모 있는 때는 막다른 판입니다. 지금 판에 풀이가 없으면 힌트가 지나온 판을 거슬러 올라가며 풀리는 지점을 찾고 '이대로는 풀리지 않습니다 — N수 되돌리면 풀이가 있습니다'라고 알려 줍니다. 함께 뜨는 'N수 되돌리기' 단추를 누르면 그 자리로 돌아가 둘 수를 짚어 줍니다. 풀 수 없다는 것을 증명하지 못하고 시간이 다 된 경우에는 '여기서는 풀이를 찾지 못했습니다'로 시작하는 안내가 뜹니다. 아무 데서도 풀이를 찾지 못하면 힌트를 쓴 것으로 치지 않습니다.
힌트에는 대가가 있습니다. 한 판에서 처음 힌트를 누르면 확인을 묻는데, 힌트를 본 판은 연습 기록이 되기 때문입니다. 순위표에 제출되지 않고 연승에도 더해지지 않습니다. 대신 연승을 끊지도 않습니다. 대전에는 힌트 단추가 없습니다.
솔리테어·골프·트라이픽스는 무엇이 다른가
프리셀 마니아의 다른 게임은 규칙이 달라서 프리셀에서 들인 습관이 그대로 통하지 않는 부분이 있습니다. 세 게임 모두 #1부터 #5,000까지 열려 있고 전부 솔버로 확인했으며, 처음 섞은 배치가 통과하지 못한 번호에는 새 배치를 넣었습니다.
- 솔리테어(클론다이크): 일곱 열에 1장부터 7장까지 깔리고 맨 앞 카드만 앞면입니다. 스톡 24장은 한 장씩 뒤집고, 다시 넘기는 횟수에 제한이 없습니다. 앞면인 묶음은 몇 장이든 한 번에 옮기므로 묶음 이동 한도가 없지만, 빈 열에는 K나 K로 시작하는 묶음만 놓을 수 있습니다. 파운데이션에서 카드를 다시 내릴 수 있고 되돌리기도 됩니다. 5,000개 번호 중 901개에 새 배치를 넣었습니다. 공간을 아끼는 것보다 뒷면 카드를 뒤집는 것이 먼저입니다.
- 골프: 일곱 열에 다섯 장씩 35장이 깔리고 스톡은 17장입니다. 각 열의 맨 앞 카드가 폐기 더미 맨 위 카드와 끗수가 하나 차이 나면 무늬와 상관없이 걷을 수 있습니다. A와 K는 이어지지 않아서 A 위에는 2만, K 위에는 Q만 올라갑니다. 되돌리기는 한 판에 한 번, 방금 걷은 카드에만 쓸 수 있고 스톡 뒤집기는 무를 수 없습니다. 5,000개 번호 중 2,778개에 새 배치를 넣었습니다.
- 트라이픽스: 열 장짜리 바닥 줄 위로 산 세 개에 28장이 깔리고, 스톡 24장 중 한 장을 뒤집어 놓고 시작합니다. 끗수가 하나 차이 나면 걷는 규칙은 같지만 A가 2와도 K와도 이어집니다. 이 게임에서는 산의 카드가 모두 앞면이라 걷을 순서를 미리 그려 볼 수 있고, 모르는 것은 스톡의 순서뿐입니다. 되돌리기 규칙은 골프와 같습니다. 159개 번호에 새 배치를 넣었습니다.
골프와 트라이픽스에서 들일 습관 하나
두 게임은 어차피 모든 카드를 걷어야 하므로, 이동 수 순위표는 사실상 스톡을 덜 뒤집은 사람의 순위표입니다. 스톡을 뒤집기 전에 이미 보이는 카드로 이어 걷을 수 있는 가장 긴 줄을 먼저 따라가 보세요.