십자말 풀이 만들기
직접 준비한 2~16개 단어와 힌트를 한 줄씩 입력합니다. 완성형 한글 음절과 영문 A–Z 글자만 셀로 쓰며 영문은 대문자로 바꿉니다. 제한된 탐욕 배치는 교차 문자와 인접 충돌을 검사하지만 모든 가능한 배치나 정답의 유일성을 증명하지 않습니다. 배치하지 못한 단어는 따로 표시됩니다.
주요 기능
- 한글 NFC 음절·영문 A–Z 문자 한 칸, 중복·길이·힌트 검증
- 같은 문자 교차·끝칸·옆칸 접촉을 검사하는 17×17 제한 배치
- 번호가 붙은 가로/세로 힌트와 배치 불가 이유 표시
- 키보드 입력과 오답 칸 표시, 의도적인 정답 공개
- 답 없는 인쇄용 문제 SVG와 별도 정답 SVG
- 브라우저 안에서 버전 1 JSON 세션 저장·검증·불러오기
사용 방법
- 한 줄에 ‘단어 | 힌트’를 쓰고 퍼즐 만들기를 누릅니다.
- 배치된 가로·세로 번호와 힌트를 보고 빈칸에 한 음절 또는 한 글자씩 입력합니다.
- 검사로 채운 칸과 오답 수를 확인하고 수정합니다. 배치 불가 목록도 살펴봅니다.
- 인쇄용 빈 문제 SVG를 저장하거나 세션 JSON을 저장·불러옵니다.
- 정답이 필요할 때만 공개를 확인하고 정답 SVG를 별도로 저장합니다.
활용 예시
- 수업 단어 목록을 나만의 한글 십자말 활동지로 만들기
- 가로·세로 힌트로 영문 어휘 복습하기
- 놓이지 않은 단어를 확인하고 어휘 목록을 다시 고르기
자주 묻는 질문
한글은 어떻게 칸으로 나뉘나요?
입력을 NFC로 정규화해 ‘사과’는 ‘사’와 ‘과’ 두 칸이 됩니다. 영문 A–Z는 한 글자씩 대문자로 처리합니다. 공백·숫자·이모지·분리 자모·악센트 문자는 단어에 넣을 수 없습니다.
왜 일부 단어가 배치되지 않았나요?
현재 놓인 단어와 공통 글자가 없거나, 같은 글자가 있어도 17×17 안에서 교차·끝칸·옆칸 규칙을 만족하는 자리를 찾지 못했기 때문입니다. 탐색 상한에 닿았다면 그 사실을 따로 표시합니다. 이는 다른 배치가 존재하지 않는다는 증명이 아닙니다.
퍼즐 답이 하나뿐인가요?
보장하지 않습니다. 힌트의 의미나 가능한 다른 단어를 사전으로 검사하지 않으며 사용자 단어만 배치합니다. 교차 배치도 최적화나 전역 완전 탐색이 아닙니다.
문제지와 정답지는 어떻게 분리되나요?
문제 SVG는 번호·빈칸·힌트만 담습니다. 별도 정답 SVG와 화면 정답은 사용자가 공개를 확인한 뒤에만 표시합니다. 세션 JSON에는 원래 단어와 풀이 입력이 들어 있으므로 정답을 숨겨 배포하려면 문제 SVG만 공유하세요.
입력한 단어가 서버로 전송되나요?
아니요. 작성·배치·풀이·파일 저장과 불러오기는 현재 브라우저 탭에서 처리됩니다.
개인정보 안내
입력 단어·힌트·풀이 값은 현재 브라우저 탭에 머물며 요청한 JSON 또는 SVG 파일로만 내보냅니다. 서버로 자동 제출하지 않습니다.
댓글과 질문