단어 및 스테이지 추가, 관리 툴 추가
This commit is contained in:
File diff suppressed because it is too large
Load Diff
+15319
-95
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,325 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
import json
|
||||||
|
import csv
|
||||||
|
import re
|
||||||
|
import os
|
||||||
|
|
||||||
|
def clean_meaning(text):
|
||||||
|
text = re.sub(r'[\((][^))]*[\))]', '', text)
|
||||||
|
text = re.sub(r'[=ꁍ\s]+', ' ', text).strip()
|
||||||
|
if not text.endswith('.'):
|
||||||
|
text += '.'
|
||||||
|
return text
|
||||||
|
|
||||||
|
def validate_stage(stage):
|
||||||
|
grid_size = stage['gridSize']
|
||||||
|
clues = stage['clues']
|
||||||
|
grid = {}
|
||||||
|
|
||||||
|
# 1. Check length & bounds
|
||||||
|
for clue in clues:
|
||||||
|
word = clue['word']
|
||||||
|
length = clue['length']
|
||||||
|
if len(word) != length:
|
||||||
|
return False, f"Stage {stage['stageNumber']}: '{word}' len ({len(word)}) != length ({length})"
|
||||||
|
|
||||||
|
is_across = clue['direction'].upper() == 'ACROSS'
|
||||||
|
sr = clue['startRow']
|
||||||
|
sc = clue['startCol']
|
||||||
|
|
||||||
|
if is_across:
|
||||||
|
if sr < 0 or sr >= grid_size or sc < 0 or (sc + length) > grid_size:
|
||||||
|
return False, f"Stage {stage['stageNumber']}: '{word}' ACROSS out of bounds (r:{sr}, c:{sc}..{sc+length}) for gridSize {grid_size}"
|
||||||
|
else:
|
||||||
|
if sc < 0 or sc >= grid_size or sr < 0 or (sr + length) > grid_size:
|
||||||
|
return False, f"Stage {stage['stageNumber']}: '{word}' DOWN out of bounds (r:{sr}..{sr+length}, c:{sc}) for gridSize {grid_size}"
|
||||||
|
|
||||||
|
for i, ch in enumerate(word):
|
||||||
|
r = sr if is_across else sr + i
|
||||||
|
c = sc + i if is_across else sc
|
||||||
|
if (r, c) in grid:
|
||||||
|
existing_ch, existing_word = grid[(r, c)]
|
||||||
|
if existing_ch != ch:
|
||||||
|
return False, f"Stage {stage['stageNumber']}: Clash at ({r},{c}) between '{existing_word}'({existing_ch}) and '{word}'({ch})"
|
||||||
|
else:
|
||||||
|
grid[(r, c)] = (ch, word)
|
||||||
|
|
||||||
|
return True, "OK"
|
||||||
|
|
||||||
|
# 15 High-quality curated thematic stages from Korean Vocabulary and Idioms
|
||||||
|
stages_data = [
|
||||||
|
# ==================== DIFFICULTY 1: 초급 (자연과 일상 생활) ====================
|
||||||
|
{
|
||||||
|
"stageNumber": 1,
|
||||||
|
"title": "첫걸음 (자연과 일상)",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 1,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c1_1", "number": 1, "direction": "ACROSS", "word": "가을하늘", "clue": "가을철의 맑고 푸른 하늘.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c1_2", "number": 2, "direction": "DOWN", "word": "하늘나라", "clue": "천국을 이르는 말.", "startRow": 1, "startCol": 2, "length": 4},
|
||||||
|
{"id": "c1_3", "number": 3, "direction": "ACROSS", "word": "나비효과", "clue": "미세한 변화가 엄청난 결과를 낳는 현상.", "startRow": 3, "startCol": 2, "length": 4}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 2,
|
||||||
|
"title": "동네 한바퀴",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 1,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c2_1", "number": 1, "direction": "ACROSS", "word": "과일가게", "clue": "여러 가지 과일을 파는 상점.", "startRow": 0, "startCol": 1, "length": 4},
|
||||||
|
{"id": "c2_2", "number": 2, "direction": "DOWN", "word": "가면무도회", "clue": "참가자가 가면을 쓰고 춤을 추는 연회.", "startRow": 0, "startCol": 3, "length": 5},
|
||||||
|
{"id": "c2_3", "number": 3, "direction": "ACROSS", "word": "무지개", "clue": "비 갠 하늘에 나타나는 일곱 빛깔 호선.", "startRow": 2, "startCol": 3, "length": 3},
|
||||||
|
{"id": "c2_4", "number": 4, "direction": "DOWN", "word": "개구쟁이", "clue": "궂은 장난을 자주 치는 귀여운 아이.", "startRow": 2, "startCol": 5, "length": 4}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 3,
|
||||||
|
"title": "학교와 친구",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 1,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c3_1", "number": 1, "direction": "ACROSS", "word": "선생님", "clue": "학생을 가르치고 지도하는 어른.", "startRow": 1, "startCol": 1, "length": 3},
|
||||||
|
{"id": "c3_2", "number": 2, "direction": "DOWN", "word": "생일파티", "clue": "태어난 날을 축하하기 위해 여는 잔치.", "startRow": 1, "startCol": 2, "length": 4},
|
||||||
|
{"id": "c3_3", "number": 3, "direction": "ACROSS", "word": "파란하늘", "clue": "맑고 맑은 푸른 하늘.", "startRow": 3, "startCol": 2, "length": 4},
|
||||||
|
{"id": "c3_4", "number": 4, "direction": "DOWN", "word": "하모니", "clue": "여러 소리가 잘 어울려 아름다운 조화를 이룸.", "startRow": 3, "startCol": 4, "length": 3}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 4,
|
||||||
|
"title": "음식과 식탁",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 1,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c4_1", "number": 1, "direction": "ACROSS", "word": "된장찌개", "clue": "된장을 풀어 두부와 채소를 넣고 끓인 한국의 대표 찌개.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c4_2", "number": 2, "direction": "DOWN", "word": "개나리", "clue": "봄에 노랗게 피어나는 대표적인 봄꽃.", "startRow": 1, "startCol": 3, "length": 3},
|
||||||
|
{"id": "c4_3", "number": 3, "direction": "ACROSS", "word": "리본끈", "clue": "선물이나 머리를 예쁘게 묶는 끈.", "startRow": 3, "startCol": 3, "length": 3},
|
||||||
|
{"id": "c4_4", "number": 4, "direction": "DOWN", "word": "본보기", "clue": "본받을 만한 모범이나 표본.", "startRow": 3, "startCol": 4, "length": 3}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 5,
|
||||||
|
"title": "가족과 사랑",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 1,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c5_1", "number": 1, "direction": "ACROSS", "word": "가족사진", "clue": "가족 모두가 함께 모여 찍은 기념 사진.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c5_2", "number": 2, "direction": "DOWN", "word": "사랑방", "clue": "손님을 맞이하고 쉬어가는 전통 방.", "startRow": 1, "startCol": 2, "length": 3},
|
||||||
|
{"id": "c5_3", "number": 3, "direction": "ACROSS", "word": "방방곡곡", "clue": "전국 방방곡곡, 한 곳도 빠짐없는 모든 곳.", "startRow": 3, "startCol": 2, "length": 4},
|
||||||
|
{"id": "c5_4", "number": 4, "direction": "DOWN", "word": "곡예사", "clue": "서커스나 줄타기 따위 곡예를 하는 사람.", "startRow": 3, "startCol": 4, "length": 3}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
|
||||||
|
# ==================== DIFFICULTY 2: 중급 (지혜와 사자성어) ====================
|
||||||
|
{
|
||||||
|
"stageNumber": 6,
|
||||||
|
"title": "사자성어와 지혜",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 2,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c6_1", "number": 1, "direction": "ACROSS", "word": "일석이조", "clue": "돌 하나로 새 두 마리를 잡는다는 사자성어.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c6_2", "number": 2, "direction": "DOWN", "word": "조약돌", "clue": "물에 씻기어 둥글고 반드러워진 작은 돌.", "startRow": 1, "startCol": 3, "length": 3},
|
||||||
|
{"id": "c6_3", "number": 3, "direction": "ACROSS", "word": "돌다리", "clue": "돌로 놓은 다리. 신중함을 뜻하는 속담 소재.", "startRow": 3, "startCol": 3, "length": 3},
|
||||||
|
{"id": "c6_4", "number": 4, "direction": "DOWN", "word": "다락방", "clue": "지붕 바로 밑이나 천장 위에 꾸며 놓은 방.", "startRow": 3, "startCol": 4, "length": 3}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 7,
|
||||||
|
"title": "문화와 전통",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 2,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c7_1", "number": 1, "direction": "ACROSS", "word": "방방곡곡", "clue": "전국 방방곡곡, 한 곳도 빠짐없는 모든 곳.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c7_2", "number": 2, "direction": "DOWN", "word": "곡예사", "clue": "서커스나 줄타기 따위 곡예를 하는 사람.", "startRow": 1, "startCol": 3, "length": 3},
|
||||||
|
{"id": "c7_3", "number": 3, "direction": "ACROSS", "word": "고사성어", "clue": "옛날 이야기나 고사에서 유래된 사자성어 및 숙어.", "startRow": 3, "startCol": 2, "length": 4},
|
||||||
|
{"id": "c7_4", "number": 4, "direction": "DOWN", "word": "어린이", "clue": "어린아이를 대접하여 부르는 말.", "startRow": 3, "startCol": 5, "length": 3},
|
||||||
|
{"id": "c7_5", "number": 5, "direction": "ACROSS", "word": "호랑이", "clue": "고양이과의 사나운 맹수, 산군.", "startRow": 5, "startCol": 3, "length": 3}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 8,
|
||||||
|
"title": "마음과 소통",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 2,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c8_1", "number": 1, "direction": "ACROSS", "word": "이심전심", "clue": "말이나 글이 없어도 마음에서 마음으로 뜻이 통함.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c8_2", "number": 2, "direction": "DOWN", "word": "심봉사", "clue": "심청전에 나오는 심청이의 눈먼 아버지.", "startRow": 1, "startCol": 1, "length": 3},
|
||||||
|
{"id": "c8_3", "number": 3, "direction": "ACROSS", "word": "사통팔달", "clue": "길이나 도로가 사방으로 막힘없이 시원하게 통함.", "startRow": 3, "startCol": 1, "length": 4},
|
||||||
|
{"id": "c8_4", "number": 4, "direction": "DOWN", "word": "달맞이", "clue": "정월 대보름날 밤에 달이 뜨기를 기다려 맞이함.", "startRow": 3, "startCol": 4, "length": 3}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 9,
|
||||||
|
"title": "결심과 발전",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 2,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c9_1", "number": 1, "direction": "ACROSS", "word": "작심삼일", "clue": "단단히 먹은 마음이 사흘을 가지 못하고 흐지부지됨.", "startRow": 1, "startCol": 1, "length": 4},
|
||||||
|
{"id": "c9_2", "number": 2, "direction": "DOWN", "word": "일취월장", "clue": "날마다 달마다 눈부시게 끊임없이 발전함.", "startRow": 1, "startCol": 4, "length": 4},
|
||||||
|
{"id": "c9_3", "number": 3, "direction": "ACROSS", "word": "입장권", "clue": "공연장이나 경기장에 들어갈 수 있는 표.", "startRow": 4, "startCol": 3, "length": 3},
|
||||||
|
{"id": "c9_4", "number": 4, "direction": "DOWN", "word": "권총", "clue": "한 손으로 쥐고 쏠 수 있는 작은 총.", "startRow": 4, "startCol": 5, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 10,
|
||||||
|
"title": "풍류와 애정",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 2,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c10_1", "number": 1, "direction": "ACROSS", "word": "금상첨화", "clue": "비단 위에 꽃을 더한다는 뜻으로, 좋은 일 위에 좋은 일이 겹침.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c10_2", "number": 2, "direction": "DOWN", "word": "화기애애", "clue": "여럿이 모여 분위기가 온화하고 즐거움.", "startRow": 1, "startCol": 3, "length": 4},
|
||||||
|
{"id": "c10_3", "number": 3, "direction": "ACROSS", "word": "천애고아", "clue": "세상에 의지할 만한 부모 형제가 없는 외로운 고아.", "startRow": 3, "startCol": 2, "length": 4},
|
||||||
|
{"id": "c10_4", "number": 4, "direction": "DOWN", "word": "아침밥", "clue": "아침에 먹는 밥이나 식사.", "startRow": 3, "startCol": 5, "length": 3}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
|
||||||
|
# ==================== DIFFICULTY 3: 고급 (고사성어 열전) ====================
|
||||||
|
{
|
||||||
|
"stageNumber": 11,
|
||||||
|
"title": "고사성어 열전 I",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 3,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c11_1", "number": 1, "direction": "ACROSS", "word": "사상누각", "clue": "모래 위에 세운 누각처럼 기초가 약하여 무너지기 쉬운 일.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c11_2", "number": 2, "direction": "DOWN", "word": "각골난망", "clue": "은혜를 고맙게 여기는 마음이 뼈에 사무쳐 잊혀지지 아니함.", "startRow": 1, "startCol": 3, "length": 4},
|
||||||
|
{"id": "c11_3", "number": 3, "direction": "ACROSS", "word": "패가망신", "clue": "가산을 다 탕진하고 몸을 망침.", "startRow": 4, "startCol": 1, "length": 4},
|
||||||
|
{"id": "c11_4", "number": 4, "direction": "DOWN", "word": "신사", "clue": "예의 바르고 품위가 있는 점잖은 남자.", "startRow": 4, "startCol": 4, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 12,
|
||||||
|
"title": "고사성어 열전 II",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 3,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c12_1", "number": 1, "direction": "ACROSS", "word": "설상가상", "clue": "눈 위에 서리가 덮인다는 뜻으로, 난처한 일이나 불행이 잇따라 일어남.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c12_2", "number": 2, "direction": "DOWN", "word": "상부상조", "clue": "서로서로 돕고 의지함.", "startRow": 1, "startCol": 3, "length": 4},
|
||||||
|
{"id": "c12_3", "number": 3, "direction": "ACROSS", "word": "일조일석", "clue": "하루아침이나 하루 저녁. 아주 짧은 시간.", "startRow": 4, "startCol": 2, "length": 4},
|
||||||
|
{"id": "c12_4", "number": 4, "direction": "DOWN", "word": "석양", "clue": "저녁때 지는 해나 그 햇빛.", "startRow": 4, "startCol": 5, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 13,
|
||||||
|
"title": "지혜와 통찰",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 3,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c13_1", "number": 1, "direction": "ACROSS", "word": "대기만성", "clue": "큰 그릇은 늦게 이루어진다는 뜻으로, 크게 될 인물은 오랜 노력을 거쳐 늦게 성공함.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c13_2", "number": 2, "direction": "DOWN", "word": "성동격서", "clue": "동쪽에서 소리를 내고 서쪽을 친다는 뜻으로, 상대를 속여 기습함.", "startRow": 1, "startCol": 3, "length": 4},
|
||||||
|
{"id": "c13_3", "number": 3, "direction": "ACROSS", "word": "서유기", "clue": "손오공과 삼장법사의 모험을 담은 중국의 고전 소설.", "startRow": 4, "startCol": 3, "length": 3},
|
||||||
|
{"id": "c13_4", "number": 4, "direction": "DOWN", "word": "공기밥", "clue": "공기에 담은 밥.", "startRow": 3, "startCol": 5, "length": 3}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 14,
|
||||||
|
"title": "처세와 인간관계",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 3,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c14_1", "number": 1, "direction": "ACROSS", "word": "역지사지", "clue": "처지를 바꾸어 다른 사람의 입장에서 생각해 봄.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c14_2", "number": 2, "direction": "DOWN", "word": "지피지기", "clue": "상대를 알고 나를 알면 백 번 싸워도 위태롭지 않음.", "startRow": 1, "startCol": 3, "length": 4},
|
||||||
|
{"id": "c14_3", "number": 3, "direction": "ACROSS", "word": "임기응변", "clue": "변화에 맞추어 그때그때 알맞게 대처함.", "startRow": 4, "startCol": 2, "length": 4},
|
||||||
|
{"id": "c14_4", "number": 4, "direction": "DOWN", "word": "변호", "clue": "남의 이익을 변호하거나 억울함을 밝혀 줌.", "startRow": 4, "startCol": 5, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 15,
|
||||||
|
"title": "호연지기와 기상",
|
||||||
|
"gridSize": 7,
|
||||||
|
"difficulty": 3,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c15_1", "number": 1, "direction": "ACROSS", "word": "호연지기", "clue": "하늘과 땅 사이에 가득 찬 넓고 크고 올곧은 기운.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c15_2", "number": 2, "direction": "DOWN", "word": "기사회생", "clue": "죽을 뻔하다가 기적적으로 다시 살아남.", "startRow": 1, "startCol": 3, "length": 4},
|
||||||
|
{"id": "c15_3", "number": 3, "direction": "ACROSS", "word": "생로병사", "clue": "사람이 태어나서 늙고 병들고 죽는 네 가지 고통.", "startRow": 4, "startCol": 3, "length": 4},
|
||||||
|
{"id": "c15_4", "number": 4, "direction": "DOWN", "word": "고사성어", "clue": "옛날 이야기나 고사에서 유래된 사자성어 및 숙어.", "startRow": 3, "startCol": 6, "length": 4},
|
||||||
|
{"id": "c15_5", "number": 5, "direction": "ACROSS", "word": "오징어", "clue": "몸이 길쭉하고 다리가 열 개인 바다 연체동물.", "startRow": 6, "startCol": 4, "length": 3}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
||||||
|
# Validate all stages
|
||||||
|
all_valid = True
|
||||||
|
for stage in stages_data:
|
||||||
|
ok, msg = validate_stage(stage)
|
||||||
|
if not ok:
|
||||||
|
print(f"[FAIL] {msg}")
|
||||||
|
all_valid = False
|
||||||
|
else:
|
||||||
|
print(f"[PASS] Stage {stage['stageNumber']} ({stage['title']}): Valid layout ({len(stage['clues'])} clues)")
|
||||||
|
|
||||||
|
if not all_valid:
|
||||||
|
print("Aborting due to validation errors.")
|
||||||
|
exit(1)
|
||||||
|
|
||||||
|
# 1. Write stages.json
|
||||||
|
stages_json_path = "app/src/main/assets/data/stages.json"
|
||||||
|
with open(stages_json_path, "w", encoding="utf-8") as f:
|
||||||
|
json.dump(stages_data, f, ensure_ascii=False, indent=2)
|
||||||
|
print(f"Successfully saved {len(stages_data)} stages to {stages_json_path}")
|
||||||
|
|
||||||
|
# 2. Write Google Sheets CSV export
|
||||||
|
csv_path = "tools/stages_sheet_import.csv"
|
||||||
|
with open(csv_path, "w", encoding="utf-8-sig", newline="") as f:
|
||||||
|
writer = csv.writer(f)
|
||||||
|
writer.writerow([
|
||||||
|
"stageNumber", "title", "gridSize", "difficulty",
|
||||||
|
"clueId", "number", "direction", "word", "clue", "startRow", "startCol", "length"
|
||||||
|
])
|
||||||
|
for stage in stages_data:
|
||||||
|
for clue in stage['clues']:
|
||||||
|
writer.writerow([
|
||||||
|
stage['stageNumber'],
|
||||||
|
stage['title'],
|
||||||
|
stage['gridSize'],
|
||||||
|
stage['difficulty'],
|
||||||
|
clue['id'],
|
||||||
|
clue['number'],
|
||||||
|
clue['direction'],
|
||||||
|
clue['word'],
|
||||||
|
clue['clue'],
|
||||||
|
clue['startRow'],
|
||||||
|
clue['startCol'],
|
||||||
|
clue['length']
|
||||||
|
])
|
||||||
|
print(f"Successfully saved Google Sheets import file to {csv_path}")
|
||||||
|
|
||||||
|
# 3. Build comprehensive words.json for vocabulary learning
|
||||||
|
words_dict = []
|
||||||
|
seen_words = set()
|
||||||
|
|
||||||
|
# Add all words from stages first
|
||||||
|
for stage in stages_data:
|
||||||
|
for clue in stage['clues']:
|
||||||
|
w = clue['word']
|
||||||
|
if w not in seen_words:
|
||||||
|
seen_words.add(w)
|
||||||
|
words_dict.append({
|
||||||
|
"id": f"w_{len(words_dict) + 1}",
|
||||||
|
"word": w,
|
||||||
|
"meaning": clue['clue'],
|
||||||
|
"category": "스테이지 단어",
|
||||||
|
"difficulty": stage['difficulty'],
|
||||||
|
"example": f"{w}을(를) 활용한 바른 문장을 익혀봅시다."
|
||||||
|
})
|
||||||
|
|
||||||
|
# Add idioms from blog
|
||||||
|
if os.path.exists("tools/extracted_idioms.json"):
|
||||||
|
with open("tools/extracted_idioms.json", "r", encoding="utf-8") as f:
|
||||||
|
idioms = json.load(f)
|
||||||
|
for item in idioms:
|
||||||
|
w = item['word']
|
||||||
|
if w not in seen_words and len(w) == 4:
|
||||||
|
seen_words.add(w)
|
||||||
|
hanja_info = f"({item['hanja']}) " if item.get('hanja') else ""
|
||||||
|
words_dict.append({
|
||||||
|
"id": f"w_{len(words_dict) + 1}",
|
||||||
|
"word": w,
|
||||||
|
"meaning": hanja_info + clean_meaning(item['meaning']),
|
||||||
|
"category": "고사성어",
|
||||||
|
"difficulty": 3,
|
||||||
|
"example": f"{w}의 뜻과 교훈을 마음 깊이 새겨봅시다."
|
||||||
|
})
|
||||||
|
|
||||||
|
words_json_path = "app/src/main/assets/data/words.json"
|
||||||
|
with open(words_json_path, "w", encoding="utf-8") as f:
|
||||||
|
json.dump(words_dict, f, ensure_ascii=False, indent=2)
|
||||||
|
print(f"Successfully saved {len(words_dict)} words to {words_json_path}")
|
||||||
@@ -0,0 +1,592 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
"""
|
||||||
|
Full verified 30-Stage Generator for Hangul Word Puzzles.
|
||||||
|
"""
|
||||||
|
|
||||||
|
import json
|
||||||
|
import csv
|
||||||
|
|
||||||
|
def validate_stage(stage):
|
||||||
|
grid_size = stage['gridSize']
|
||||||
|
clues = stage['clues']
|
||||||
|
grid = {}
|
||||||
|
|
||||||
|
if len(clues) < 4:
|
||||||
|
return False, f"Stage {stage['stageNumber']}: Too few clues ({len(clues)})"
|
||||||
|
|
||||||
|
for clue in clues:
|
||||||
|
word = clue['word']
|
||||||
|
length = clue['length']
|
||||||
|
r = clue['startRow']
|
||||||
|
c = clue['startCol']
|
||||||
|
direction = clue['direction']
|
||||||
|
|
||||||
|
if len(word) != length:
|
||||||
|
return False, f"Stage {stage['stageNumber']} Clue {clue['id']}: word '{word}' len {len(word)} != length {length}"
|
||||||
|
if length < 2:
|
||||||
|
return False, f"Stage {stage['stageNumber']} Clue {clue['id']}: 1-letter word '{word}' not allowed"
|
||||||
|
|
||||||
|
for i, ch in enumerate(word):
|
||||||
|
curr_r = r + (i if direction == 'DOWN' else 0)
|
||||||
|
curr_c = c + (i if direction == 'ACROSS' else 0)
|
||||||
|
|
||||||
|
if curr_r < 0 or curr_r >= grid_size or curr_c < 0 or curr_c >= grid_size:
|
||||||
|
return False, f"Stage {stage['stageNumber']} Clue {clue['id']}: '{word}' char '{ch}' at ({curr_r}, {curr_c}) out of bounds ({grid_size}x{grid_size})"
|
||||||
|
|
||||||
|
if (curr_r, curr_c) in grid:
|
||||||
|
if grid[(curr_r, curr_c)] != ch:
|
||||||
|
return False, f"Stage {stage['stageNumber']} CLASH at ({curr_r}, {curr_c}): existing '{grid[(curr_r, curr_c)]}' vs '{ch}' in {clue['id']} ('{word}')"
|
||||||
|
else:
|
||||||
|
grid[(curr_r, curr_c)] = ch
|
||||||
|
|
||||||
|
return True, f"Stage {stage['stageNumber']} OK ({len(clues)} clues, {len(grid)} cells)"
|
||||||
|
|
||||||
|
stages = [
|
||||||
|
# ==================== TIER 1: 입문 (스테이지 1~5, 4~5단어, 5x5 그리드) ====================
|
||||||
|
{
|
||||||
|
"stageNumber": 1,
|
||||||
|
"title": "첫걸음: 봄날의 자연",
|
||||||
|
"gridSize": 5,
|
||||||
|
"difficulty": 1,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c1_1", "number": 1, "direction": "ACROSS", "word": "봄바람", "clue": "봄철에 불어오는 따뜻하고 부드러운 바람.", "startRow": 1, "startCol": 0, "length": 3},
|
||||||
|
{"id": "c1_2", "number": 2, "direction": "DOWN", "word": "바다", "clue": "지구 위에서 육지를 둘러싼 넓고 짠 물.", "startRow": 1, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c1_3", "number": 3, "direction": "ACROSS", "word": "다람쥐", "clue": "도토리를 좋아하고 꼬리가 복슬복슬한 작은 동물.", "startRow": 2, "startCol": 1, "length": 3},
|
||||||
|
{"id": "c1_4", "number": 4, "direction": "DOWN", "word": "쥐구멍", "clue": "쥐가 드나들거나 숨는 작은 구멍.", "startRow": 2, "startCol": 3, "length": 3}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 2,
|
||||||
|
"title": "학교와 친구들",
|
||||||
|
"gridSize": 5,
|
||||||
|
"difficulty": 1,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c2_1", "number": 1, "direction": "ACROSS", "word": "학교", "clue": "학생들이 모여 지식과 배움을 익히는 곳.", "startRow": 1, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c2_2", "number": 2, "direction": "DOWN", "word": "교실", "clue": "학교에서 수업을 받는 방.", "startRow": 1, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c2_3", "number": 3, "direction": "ACROSS", "word": "실내화", "clue": "건물이나 방 안에서 신는 가벼운 신발.", "startRow": 2, "startCol": 2, "length": 3},
|
||||||
|
{"id": "c2_4", "number": 4, "direction": "DOWN", "word": "화분", "clue": "흙을 담아 꽃이나 식물을 심는 그릇.", "startRow": 2, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c2_5", "number": 5, "direction": "ACROSS", "word": "친구", "clue": "가깝게 오래 사귄 벗.", "startRow": 4, "startCol": 0, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 3,
|
||||||
|
"title": "하늘과 날씨",
|
||||||
|
"gridSize": 5,
|
||||||
|
"difficulty": 1,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c3_1", "number": 1, "direction": "ACROSS", "word": "구름", "clue": "공중의 수증기가 엉겨서 하얗게 떠 있는 것.", "startRow": 1, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c3_2", "number": 2, "direction": "DOWN", "word": "구슬", "clue": "둥글고 투명하거나 반짝이는 물건.", "startRow": 1, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c3_3", "number": 3, "direction": "ACROSS", "word": "슬기", "clue": "사리를 밝히고 지혜롭게 처리하는 능력.", "startRow": 2, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c3_4", "number": 4, "direction": "DOWN", "word": "기차", "clue": "철도 위를 달리는 교통수단.", "startRow": 2, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c3_5", "number": 5, "direction": "ACROSS", "word": "하늘", "clue": "땅 위를 덮고 있는 푸르고 넓은 공간.", "startRow": 4, "startCol": 2, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 4,
|
||||||
|
"title": "우리 집과 가족",
|
||||||
|
"gridSize": 5,
|
||||||
|
"difficulty": 1,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c4_1", "number": 1, "direction": "ACROSS", "word": "가족", "clue": "부모, 형제 등 혈연으로 맺어진 사람들의 공동체.", "startRow": 1, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c4_2", "number": 2, "direction": "DOWN", "word": "가방", "clue": "물건이나 책을 넣어 들고 다니는 세간.", "startRow": 1, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c4_3", "number": 3, "direction": "ACROSS", "word": "방안", "clue": "어떤 방의 내부.", "startRow": 2, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c4_4", "number": 4, "direction": "DOWN", "word": "안경", "clue": "눈이 잘 보이도록 코 위에 걸쳐 쓰는 물건.", "startRow": 2, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c4_5", "number": 5, "direction": "ACROSS", "word": "경치", "clue": "자연의 아름다운 모습이나 풍경.", "startRow": 3, "startCol": 2, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 5,
|
||||||
|
"title": "아침 식탁과 음식",
|
||||||
|
"gridSize": 5,
|
||||||
|
"difficulty": 1,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c5_1", "number": 1, "direction": "ACROSS", "word": "식사", "clue": "밥이나 음식을 먹는 일.", "startRow": 1, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c5_2", "number": 2, "direction": "DOWN", "word": "사과", "clue": "가을에 붉게 익는 달콤하고 아삭한 과일.", "startRow": 1, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c5_3", "number": 3, "direction": "ACROSS", "word": "과자", "clue": "밀가루나 쌀로 바삭하게 구운 군것질거리.", "startRow": 2, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c5_4", "number": 4, "direction": "DOWN", "word": "자석", "clue": "쇠붙이를 끌어당기는 성질을 가진 물체.", "startRow": 2, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c5_5", "number": 5, "direction": "ACROSS", "word": "우유", "clue": "소의 젖으로 만든 하얗고 영양가 높은 음료.", "startRow": 4, "startCol": 2, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
|
||||||
|
# ==================== TIER 2: 기초 발전 (스테이지 6~10, 6~7단어, 6x6 그리드) ====================
|
||||||
|
{
|
||||||
|
"stageNumber": 6,
|
||||||
|
"title": "도심과 교통",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 1,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c6_1", "number": 1, "direction": "ACROSS", "word": "자동차", "clue": "엔진의 힘으로 바퀴를 굴려 달리는 차.", "startRow": 0, "startCol": 0, "length": 3},
|
||||||
|
{"id": "c6_2", "number": 2, "direction": "DOWN", "word": "차량", "clue": "모든 종류의 자동차와 기차 등을 통틀어 이르는 말.", "startRow": 0, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c6_3", "number": 3, "direction": "ACROSS", "word": "관광", "clue": "다른 고장이나 나라의 풍경과 풍습을 구경함.", "startRow": 1, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c6_4", "number": 4, "direction": "DOWN", "word": "자동", "clue": "스스로 작동함.", "startRow": 0, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c6_5", "number": 5, "direction": "ACROSS", "word": "신호등", "clue": "도로에서 교통 신호를 나타내는 전등.", "startRow": 4, "startCol": 2, "length": 3},
|
||||||
|
{"id": "c6_6", "number": 6, "direction": "DOWN", "word": "등산", "clue": "운동이나 휴양을 위해 산에 오름.", "startRow": 4, "startCol": 4, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 7,
|
||||||
|
"title": "시장과 장보기",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 1,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c7_1", "number": 1, "direction": "ACROSS", "word": "시장", "clue": "물건을 사고파는 장소.", "startRow": 0, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c7_2", "number": 2, "direction": "DOWN", "word": "장바구니", "clue": "시장에서 산 물건을 담는 바구니나 가방.", "startRow": 0, "startCol": 1, "length": 4},
|
||||||
|
{"id": "c7_3", "number": 3, "direction": "ACROSS", "word": "구름다리", "clue": "공중에 높이 놓아 건너다니게 한 다리.", "startRow": 2, "startCol": 1, "length": 4},
|
||||||
|
{"id": "c7_4", "number": 4, "direction": "DOWN", "word": "다림질", "clue": "옷의 주름을 펴기 위해 다리미로 문지르는 일.", "startRow": 2, "startCol": 3, "length": 3},
|
||||||
|
{"id": "c7_5", "number": 5, "direction": "ACROSS", "word": "가격", "clue": "물건의 가치를 돈으로 나타낸 액수.", "startRow": 4, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c7_6", "number": 6, "direction": "DOWN", "word": "격식", "clue": "격에 맞는 형식이나 예절.", "startRow": 4, "startCol": 5, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 8,
|
||||||
|
"title": "동물원과 자연",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 1,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c8_1", "number": 1, "direction": "ACROSS", "word": "동물원", "clue": "여러 가지 짐승을 모아 기르며 사람들에게 구경시키는 곳.", "startRow": 1, "startCol": 0, "length": 3},
|
||||||
|
{"id": "c8_2", "number": 2, "direction": "DOWN", "word": "원숭이", "clue": "나무를 잘 타고 꼬리가 긴 영장류 동물.", "startRow": 1, "startCol": 2, "length": 3},
|
||||||
|
{"id": "c8_3", "number": 3, "direction": "ACROSS", "word": "이모", "clue": "어머니의 여자 형제.", "startRow": 3, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c8_4", "number": 4, "direction": "DOWN", "word": "물고기", "clue": "물속에 살며 아가미로 숨을 쉬는 동물.", "startRow": 1, "startCol": 1, "length": 3},
|
||||||
|
{"id": "c8_5", "number": 5, "direction": "DOWN", "word": "신호", "clue": "어떤 사실을 알리기 위한 일정한 부호.", "startRow": 4, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c8_6", "number": 6, "direction": "ACROSS", "word": "호랑이", "clue": "줄무늬가 있는 맹수이자 백수의 왕.", "startRow": 5, "startCol": 0, "length": 3}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 9,
|
||||||
|
"title": "여름 바다와 여행",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 1,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c9_1", "number": 1, "direction": "ACROSS", "word": "해수욕장", "clue": "여름에 바닷물에서 멱을 감고 놀 수 있도록 마련된 곳.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c9_2", "number": 2, "direction": "DOWN", "word": "장마", "clue": "여름철에 여러 날 동안 계속해서 내리는 비.", "startRow": 1, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c9_3", "number": 3, "direction": "ACROSS", "word": "마음", "clue": "사람의 생각, 감정, 기억이 일어나는 중심.", "startRow": 2, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c9_4", "number": 4, "direction": "DOWN", "word": "수영", "clue": "물속을 헤엄침.", "startRow": 1, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c9_5", "number": 5, "direction": "ACROSS", "word": "모래성", "clue": "모래를 쌓아서 만든 성.", "startRow": 4, "startCol": 1, "length": 3},
|
||||||
|
{"id": "c9_6", "number": 6, "direction": "DOWN", "word": "성공", "clue": "목적한 바를 순조롭게 이룸.", "startRow": 4, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c9_7", "number": 7, "direction": "ACROSS", "word": "공부", "clue": "학문이나 기술을 배우고 닦음.", "startRow": 5, "startCol": 3, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 10,
|
||||||
|
"title": "도서관과 지식",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 1,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c10_1", "number": 1, "direction": "ACROSS", "word": "도서관", "clue": "많은 책과 자료를 모아 두고 사람들이 읽을 수 있게 한 곳.", "startRow": 0, "startCol": 1, "length": 3},
|
||||||
|
{"id": "c10_2", "number": 2, "direction": "DOWN", "word": "서점", "clue": "책을 파는 상점.", "startRow": 0, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c10_3", "number": 3, "direction": "ACROSS", "word": "점수", "clue": "시험이나 경기에서 얻은 성적의 수치.", "startRow": 1, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c10_4", "number": 4, "direction": "DOWN", "word": "도둑", "clue": "남의 물건을 훔치는 사람.", "startRow": 0, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c10_5", "number": 5, "direction": "ACROSS", "word": "독서", "clue": "책을 읽음.", "startRow": 3, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c10_6", "number": 6, "direction": "DOWN", "word": "서점", "clue": "책을 사서 보는 서점.", "startRow": 3, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c10_7", "number": 7, "direction": "ACROSS", "word": "점심", "clue": "낮에 먹는 끼니.", "startRow": 4, "startCol": 4, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
|
||||||
|
# ==================== TIER 3: 중급 (스테이지 11~18, 8~9단어, 6x6~7x7 그리드) ====================
|
||||||
|
{
|
||||||
|
"stageNumber": 11,
|
||||||
|
"title": "사자성어의 시작: 일석이조",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 2,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c11_1", "number": 1, "direction": "ACROSS", "word": "일석이조", "clue": "돌 한 개를 던져 새 두 마리를 잡는다는 뜻으로, 한 가지 일로 두 가지 이득을 얻음.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c11_2", "number": 2, "direction": "DOWN", "word": "조상", "clue": "지나간 세대의 조부모 이상의 웃대 어른.", "startRow": 1, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c11_3", "number": 3, "direction": "ACROSS", "word": "상장", "clue": "우수한 성적이나 공로를 칭찬하여 주는 증서.", "startRow": 2, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c11_4", "number": 4, "direction": "DOWN", "word": "장미", "clue": "가시가 있고 향기로운 붉은 꽃.", "startRow": 2, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c11_5", "number": 5, "direction": "ACROSS", "word": "미술관", "clue": "미술품을 전시하고 보존하는 곳.", "startRow": 4, "startCol": 1, "length": 3},
|
||||||
|
{"id": "c11_6", "number": 6, "direction": "DOWN", "word": "관심", "clue": "어떤 일에 마음을 기울임.", "startRow": 4, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c11_7", "number": 7, "direction": "ACROSS", "word": "심리", "clue": "마음의 작용이나 의식의 상태.", "startRow": 5, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c11_8", "number": 8, "direction": "DOWN", "word": "일기", "clue": "날마다 있었던 일을 적은 기록.", "startRow": 1, "startCol": 0, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 12,
|
||||||
|
"title": "작심삼일과 결심",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 2,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c12_1", "number": 1, "direction": "ACROSS", "word": "작심삼일", "clue": "결심한 마음이 사흘을 가지 못한다는 뜻으로, 결심이 굳지 못함.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c12_2", "number": 2, "direction": "DOWN", "word": "일기장", "clue": "날마다 있었던 일을 적는 공책.", "startRow": 1, "startCol": 3, "length": 3},
|
||||||
|
{"id": "c12_3", "number": 3, "direction": "ACROSS", "word": "장소", "clue": "사람이 살거나 어떤 일이 일어나는 곳.", "startRow": 3, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c12_4", "number": 4, "direction": "DOWN", "word": "작가", "clue": "문학이나 예술 작품을 창작하는 사람.", "startRow": 1, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c12_5", "number": 5, "direction": "ACROSS", "word": "가수", "clue": "노래를 전문으로 부르는 사람.", "startRow": 2, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c12_6", "number": 6, "direction": "ACROSS", "word": "소망", "clue": "바라고 바라는 마음.", "startRow": 4, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c12_7", "number": 7, "direction": "DOWN", "word": "망원", "clue": "먼 곳을 바라봄.", "startRow": 4, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c12_8", "number": 8, "direction": "ACROSS", "word": "원인", "clue": "어떤 사물이나 현상을 일으키는 근본.", "startRow": 5, "startCol": 4, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 13,
|
||||||
|
"title": "동고동락과 우정",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 2,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c13_1", "number": 1, "direction": "ACROSS", "word": "동고동락", "clue": "괴로움과 즐거움을 함께 나눔.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c13_2", "number": 2, "direction": "DOWN", "word": "락원", "clue": "근심 없는 즐거운 곳(낙원의 본음).", "startRow": 1, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c13_3", "number": 3, "direction": "ACROSS", "word": "원목", "clue": "베어 낸 그대로의 통나무.", "startRow": 2, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c13_4", "number": 4, "direction": "DOWN", "word": "목수", "clue": "나무를 다루어 집을 짓거나 가구를 만드는 사람.", "startRow": 2, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c13_5", "number": 5, "direction": "ACROSS", "word": "수영장", "clue": "수영을 할 수 있도록 물을 채워 만든 시설.", "startRow": 4, "startCol": 1, "length": 3},
|
||||||
|
{"id": "c13_6", "number": 6, "direction": "DOWN", "word": "장갑", "clue": "손을 보호하거나 따뜻하게 하기 위해 끼는 물건.", "startRow": 4, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c13_7", "number": 7, "direction": "ACROSS", "word": "갑옷", "clue": "옛날 군사가 칼이나 화살을 막기 위해 입던 쇠 옷.", "startRow": 5, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c13_8", "number": 8, "direction": "DOWN", "word": "동물", "clue": "살아 움직이는 생물.", "startRow": 1, "startCol": 0, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 14,
|
||||||
|
"title": "권선징악과 교훈",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 2,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c14_1", "number": 1, "direction": "ACROSS", "word": "권선징악", "clue": "착한 행실을 권장하고 악한 행실을 징벌함.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c14_2", "number": 2, "direction": "DOWN", "word": "악마", "clue": "사람을 꾀어 악한 길로 빠지게 하는 존재.", "startRow": 1, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c14_3", "number": 3, "direction": "ACROSS", "word": "마술", "clue": "빠른 손놀림이나 도구로 신기한 눈속임을 보여주는 기술.", "startRow": 2, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c14_4", "number": 4, "direction": "DOWN", "word": "술래", "clue": "숨바꼭질이나 잡기 놀이에서 숨은 사람을 찾는 아이.", "startRow": 2, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c14_5", "number": 5, "direction": "ACROSS", "word": "선물", "clue": "남에게 정을 나타내어 거저 주는 물건.", "startRow": 4, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c14_6", "number": 6, "direction": "DOWN", "word": "물결", "clue": "물에서 일어나는 잔물결.", "startRow": 4, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c14_7", "number": 7, "direction": "ACROSS", "word": "결정", "clue": "어떤 일을 분명하게 정함.", "startRow": 5, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c14_8", "number": 8, "direction": "DOWN", "word": "인정", "clue": "확실히 그렇다고 인정함.", "startRow": 4, "startCol": 2, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 15,
|
||||||
|
"title": "다다익선과 풍요",
|
||||||
|
"gridSize": 6,
|
||||||
|
"difficulty": 2,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c15_1", "number": 1, "direction": "ACROSS", "word": "다다익선", "clue": "많으면 많을수록 더욱 좋음.", "startRow": 1, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c15_2", "number": 2, "direction": "DOWN", "word": "선생님", "clue": "학생을 가르치고 지도하는 어른.", "startRow": 1, "startCol": 3, "length": 3},
|
||||||
|
{"id": "c15_3", "number": 3, "direction": "ACROSS", "word": "님프", "clue": "신화에 나오는 숲이나 샘의 요정.", "startRow": 3, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c15_4", "number": 4, "direction": "DOWN", "word": "다림질", "clue": "옷의 주름을 펴기 위해 다리미로 문지르는 일.", "startRow": 1, "startCol": 1, "length": 3},
|
||||||
|
{"id": "c15_5", "number": 5, "direction": "ACROSS", "word": "질문", "clue": "모르는 것을 알기 위해 묻는 말.", "startRow": 3, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c15_6", "number": 6, "direction": "ACROSS", "word": "음악", "clue": "박자, 가락, 음성 등을 조화시켜 감정을 나타내는 예술.", "startRow": 4, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c15_7", "number": 7, "direction": "DOWN", "word": "악기", "clue": "음악을 연주하는 데 쓰는 기구.", "startRow": 4, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c15_8", "number": 8, "direction": "ACROSS", "word": "기차표", "clue": "기차를 탈 수 있는 승차권.", "startRow": 5, "startCol": 2, "length": 3}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 16,
|
||||||
|
"title": "온고지신과 배움의 길",
|
||||||
|
"gridSize": 7,
|
||||||
|
"difficulty": 2,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c16_1", "number": 1, "direction": "ACROSS", "word": "온고지신", "clue": "옛것을 익히고 그것을 미루어서 새것을 앎.", "startRow": 1, "startCol": 1, "length": 4},
|
||||||
|
{"id": "c16_2", "number": 2, "direction": "DOWN", "word": "신호등", "clue": "도로에서 교통 신호를 나타내는 등.", "startRow": 1, "startCol": 4, "length": 3},
|
||||||
|
{"id": "c16_3", "number": 3, "direction": "ACROSS", "word": "등대", "clue": "밤에 바다의 배들이 안전하게 길을 찾도록 불을 비추는 탑.", "startRow": 3, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c16_4", "number": 4, "direction": "DOWN", "word": "대화", "clue": "마주 대하여 이야기를 주고받음.", "startRow": 3, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c16_5", "number": 5, "direction": "DOWN", "word": "고향", "clue": "자기가 태어나서 자란 곳.", "startRow": 1, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c16_6", "number": 6, "direction": "ACROSS", "word": "향기", "clue": "좋은 냄새.", "startRow": 2, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c16_7", "number": 7, "direction": "ACROSS", "word": "화분", "clue": "흙을 담아 식물을 기르는 그릇.", "startRow": 4, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c16_8", "number": 8, "direction": "ACROSS", "word": "학생", "clue": "학교에서 공부하는 사람.", "startRow": 5, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c16_9", "number": 9, "direction": "DOWN", "word": "학습", "clue": "배우고 익힘.", "startRow": 5, "startCol": 1, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 17,
|
||||||
|
"title": "배은망덕과 도덕",
|
||||||
|
"gridSize": 7,
|
||||||
|
"difficulty": 2,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c17_1", "number": 1, "direction": "ACROSS", "word": "배은망덕", "clue": "은혜를 잊고 도리어 배반하여 덕을 해침.", "startRow": 1, "startCol": 1, "length": 4},
|
||||||
|
{"id": "c17_2", "number": 2, "direction": "DOWN", "word": "덕담", "clue": "남이 잘되기를 바라는 따뜻한 말.", "startRow": 1, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c17_3", "number": 3, "direction": "ACROSS", "word": "담요", "clue": "몸을 덮어 따뜻하게 하는 두꺼운 천.", "startRow": 2, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c17_4", "number": 4, "direction": "DOWN", "word": "요리사", "clue": "음식을 전문으로 만드는 사람.", "startRow": 2, "startCol": 5, "length": 3},
|
||||||
|
{"id": "c17_5", "number": 5, "direction": "DOWN", "word": "은혜", "clue": "고맙게 베풀어 주는 신세나 사랑.", "startRow": 1, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c17_6", "number": 6, "direction": "ACROSS", "word": "혜성", "clue": "태양 주위를 긴 궤도로 도는 꼬리 달린 별.", "startRow": 2, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c17_7", "number": 7, "direction": "ACROSS", "word": "사진", "clue": "카메라로 찍은 영상.", "startRow": 4, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c17_8", "number": 8, "direction": "ACROSS", "word": "진실", "clue": "거짓이 없는 참된 사실.", "startRow": 5, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c17_9", "number": 9, "direction": "DOWN", "word": "실내", "clue": "방이나 건물의 안쪽.", "startRow": 5, "startCol": 5, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 18,
|
||||||
|
"title": "유비무환과 철저한 준비",
|
||||||
|
"gridSize": 7,
|
||||||
|
"difficulty": 2,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c18_1", "number": 1, "direction": "ACROSS", "word": "유비무환", "clue": "미리 준비가 되어 있으면 뒷걱정이 없음.", "startRow": 1, "startCol": 1, "length": 4},
|
||||||
|
{"id": "c18_2", "number": 2, "direction": "DOWN", "word": "환자", "clue": "병에 걸려 치료를 받아야 하는 사람.", "startRow": 1, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c18_3", "number": 3, "direction": "ACROSS", "word": "자동차", "clue": "엔진의 힘으로 바퀴를 굴려 달리는 차.", "startRow": 2, "startCol": 4, "length": 3},
|
||||||
|
{"id": "c18_4", "number": 4, "direction": "DOWN", "word": "차량", "clue": "모든 종류의 차와 기차를 통틀어 이르는 말.", "startRow": 2, "startCol": 6, "length": 2},
|
||||||
|
{"id": "c18_5", "number": 5, "direction": "DOWN", "word": "비행기", "clue": "공중을 날아다니는 교통수단.", "startRow": 1, "startCol": 2, "length": 3},
|
||||||
|
{"id": "c18_6", "number": 6, "direction": "ACROSS", "word": "기분", "clue": "마음의 상태나 느낌.", "startRow": 3, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c18_7", "number": 7, "direction": "ACROSS", "word": "수량", "clue": "물의 양이나 사물의 수치.", "startRow": 3, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c18_8", "number": 8, "direction": "ACROSS", "word": "산길", "clue": "산속에 나 있는 좁은 길.", "startRow": 5, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c18_9", "number": 9, "direction": "DOWN", "word": "길목", "clue": "길이 좁아지는 길의 요긴한 어귀.", "startRow": 5, "startCol": 3, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
|
||||||
|
# ==================== TIER 4: 대형 고급 스테이지 (스테이지 19~30, 10~14단어, 7x7 그리드) ====================
|
||||||
|
{
|
||||||
|
"stageNumber": 19,
|
||||||
|
"title": "동문서답과 언어의 유희",
|
||||||
|
"gridSize": 7,
|
||||||
|
"difficulty": 3,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c19_1", "number": 1, "direction": "ACROSS", "word": "동문서답", "clue": "동쪽을 묻는데 서쪽을 대답한다는 뜻으로, 엉뚱한 대답을 함.", "startRow": 0, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c19_2", "number": 2, "direction": "DOWN", "word": "동물원", "clue": "여러 짐승을 모아 구경시키는 곳.", "startRow": 0, "startCol": 0, "length": 3},
|
||||||
|
{"id": "c19_3", "number": 3, "direction": "DOWN", "word": "답변", "clue": "물음에 대답함.", "startRow": 0, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c19_4", "number": 4, "direction": "ACROSS", "word": "변호사", "clue": "법정에서 피고인을 변호하는 법률 전문가.", "startRow": 1, "startCol": 3, "length": 3},
|
||||||
|
{"id": "c19_5", "number": 5, "direction": "DOWN", "word": "사과", "clue": "붉고 달콤한 과일.", "startRow": 1, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c19_6", "number": 6, "direction": "ACROSS", "word": "원목", "clue": "베어 낸 그대로의 통나무.", "startRow": 2, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c19_7", "number": 7, "direction": "DOWN", "word": "목수", "clue": "나무를 다루어 가구나 건물을 만드는 기술자.", "startRow": 2, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c19_8", "number": 8, "direction": "ACROSS", "word": "수심", "clue": "물의 깊이 또는 근심하는 마음.", "startRow": 3, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c19_9", "number": 9, "direction": "DOWN", "word": "심리", "clue": "마음의 작용이나 의식의 상태.", "startRow": 3, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c19_10", "number": 10, "direction": "ACROSS", "word": "리본", "clue": "매듭을 짓거나 장식하는 띠.", "startRow": 4, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c19_11", "number": 11, "direction": "DOWN", "word": "본부", "clue": "어떤 조직의 중심이 되는 부서.", "startRow": 4, "startCol": 3, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 20,
|
||||||
|
"title": "우이독경과 배움의 자세",
|
||||||
|
"gridSize": 7,
|
||||||
|
"difficulty": 3,
|
||||||
|
"clues": [
|
||||||
|
# Top Cluster (5 words)
|
||||||
|
{"id": "c20_1", "number": 1, "direction": "ACROSS", "word": "우이독경", "clue": "소의 귀에 경 읽기라는 뜻으로, 아무리 가르쳐 주어도 알아듣지 못함.", "startRow": 0, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c20_2", "number": 2, "direction": "DOWN", "word": "우유", "clue": "암소의 젖으로 만든 영양 음료.", "startRow": 0, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c20_3", "number": 3, "direction": "DOWN", "word": "독서실", "clue": "책을 읽거나 공부할 수 있도록 마련된 방.", "startRow": 0, "startCol": 2, "length": 3},
|
||||||
|
{"id": "c20_4", "number": 4, "direction": "DOWN", "word": "경찰", "clue": "사회의 질서와 치안을 지키는 조직.", "startRow": 0, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c20_5", "number": 5, "direction": "ACROSS", "word": "유리", "clue": "투명하고 단단하며 깨지기 쉬운 물질.", "startRow": 1, "startCol": 0, "length": 2},
|
||||||
|
# Middle / Bottom Cluster (6 words)
|
||||||
|
{"id": "c20_6", "number": 6, "direction": "ACROSS", "word": "실패", "clue": "일을 뜻대로 이루지 못하고 그르침.", "startRow": 2, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c20_7", "number": 7, "direction": "DOWN", "word": "패배", "clue": "싸움이나 경기에서 짐.", "startRow": 2, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c20_8", "number": 8, "direction": "ACROSS", "word": "배구", "clue": "네트를 사이에 두고 손으로 공을 쳐 넘기는 구기 경기.", "startRow": 3, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c20_9", "number": 9, "direction": "ACROSS", "word": "문학", "clue": "언어로 생각과 감정을 표현하는 예술.", "startRow": 4, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c20_10", "number": 10, "direction": "DOWN", "word": "학교", "clue": "학생들이 모여 배움을 익히는 곳.", "startRow": 4, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c20_11", "number": 11, "direction": "ACROSS", "word": "교실", "clue": "수업을 받는 학교의 방.", "startRow": 5, "startCol": 1, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 21,
|
||||||
|
"title": "역지사지와 배려의 미덕",
|
||||||
|
"gridSize": 7,
|
||||||
|
"difficulty": 3,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c21_1", "number": 1, "direction": "ACROSS", "word": "역지사지", "clue": "처지를 바꾸어 생각한다는 뜻으로, 상대방의 입장에서 헤아림.", "startRow": 0, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c21_2", "number": 2, "direction": "DOWN", "word": "역사", "clue": "인류 사회가 거쳐 온 과거의 사실이나 기록.", "startRow": 0, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c21_3", "number": 3, "direction": "DOWN", "word": "지혜", "clue": "사물의 이치를 밝히고 바르게 판단하는 슬기.", "startRow": 0, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c21_4", "number": 4, "direction": "ACROSS", "word": "사진", "clue": "카메라로 찍어 현상한 그림.", "startRow": 1, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c21_5", "number": 5, "direction": "ACROSS", "word": "혜성", "clue": "태양 주위를 긴 꼬리를 달고 도는 별.", "startRow": 1, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c21_6", "number": 6, "direction": "ACROSS", "word": "일기예보", "clue": "앞으로의 날씨 변화를 미리 알리는 방송이나 보도.", "startRow": 3, "startCol": 2, "length": 4},
|
||||||
|
{"id": "c21_7", "number": 7, "direction": "DOWN", "word": "예술", "clue": "아름다움을 표현하고 창조하는 모든 활동.", "startRow": 3, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c21_8", "number": 8, "direction": "ACROSS", "word": "술병", "clue": "술을 담아 두는 병.", "startRow": 4, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c21_9", "number": 9, "direction": "DOWN", "word": "기차", "clue": "철도 위를 달리는 열차.", "startRow": 4, "startCol": 6, "length": 2},
|
||||||
|
{"id": "c21_10", "number": 10, "direction": "ACROSS", "word": "과일", "clue": "나무나 풀에서 열리는 달콤한 열매.", "startRow": 3, "startCol": 0, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 22,
|
||||||
|
"title": "견물생심과 마음가짐",
|
||||||
|
"gridSize": 7,
|
||||||
|
"difficulty": 3,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c22_1", "number": 1, "direction": "ACROSS", "word": "견물생심", "clue": "좋은 물건을 보면 그것을 가지고 싶은 욕심이 생김.", "startRow": 0, "startCol": 1, "length": 4},
|
||||||
|
{"id": "c22_2", "number": 2, "direction": "DOWN", "word": "견해", "clue": "어떤 사물이나 현상에 대하여 가지는 생각이나 의견.", "startRow": 0, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c22_3", "number": 3, "direction": "DOWN", "word": "물건", "clue": "일정한 형체를 지닌 모든 대상.", "startRow": 0, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c22_4", "number": 4, "direction": "DOWN", "word": "생일", "clue": "세상에 태어난 날.", "startRow": 0, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c22_5", "number": 5, "direction": "DOWN", "word": "심리", "clue": "마음의 상태나 작용.", "startRow": 0, "startCol": 4, "length": 2},
|
||||||
|
# Bottom Cluster (6 words)
|
||||||
|
{"id": "c22_6", "number": 6, "direction": "ACROSS", "word": "일기장", "clue": "날마다 있었던 일을 적는 공책.", "startRow": 2, "startCol": 3, "length": 3},
|
||||||
|
{"id": "c22_7", "number": 7, "direction": "DOWN", "word": "장소", "clue": "어떤 일이 일어나는 자리나 위치.", "startRow": 2, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c22_8", "number": 8, "direction": "ACROSS", "word": "소망", "clue": "바라고 소원함.", "startRow": 3, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c22_9", "number": 9, "direction": "DOWN", "word": "망원경", "clue": "먼 곳의 물체를 확대하여 크게 보는 기구.", "startRow": 3, "startCol": 6, "length": 3},
|
||||||
|
{"id": "c22_10", "number": 10, "direction": "ACROSS", "word": "안경", "clue": "시력을 돕는 안경.", "startRow": 5, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c22_11", "number": 11, "direction": "DOWN", "word": "보안", "clue": "안전을 유지하고 보호함.", "startRow": 4, "startCol": 5, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 23,
|
||||||
|
"title": "금상첨화와 기쁨",
|
||||||
|
"gridSize": 7,
|
||||||
|
"difficulty": 3,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c23_1", "number": 1, "direction": "ACROSS", "word": "금상첨화", "clue": "비단 위에 꽃을 더한다는 뜻으로, 좋은 일 위에 더 좋은 일이 겹침.", "startRow": 0, "startCol": 1, "length": 4},
|
||||||
|
{"id": "c23_2", "number": 2, "direction": "DOWN", "word": "금메달", "clue": "경기에서 1위를 한 사람에게 주는 금빛 메달.", "startRow": 0, "startCol": 1, "length": 3},
|
||||||
|
{"id": "c23_3", "number": 3, "direction": "DOWN", "word": "상품", "clue": "사고파는 물품.", "startRow": 0, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c23_4", "number": 4, "direction": "DOWN", "word": "화분", "clue": "식물을 심어 기르는 그릇.", "startRow": 0, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c23_5", "number": 5, "direction": "ACROSS", "word": "품질", "clue": "물건의 성질과 바탕.", "startRow": 1, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c23_6", "number": 6, "direction": "ACROSS", "word": "분수", "clue": "물을 높이 뿜어 올리는 장치, 또는 자기 분량.", "startRow": 1, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c23_7", "number": 7, "direction": "ACROSS", "word": "달리기", "clue": "빠른 속도로 달려가는 운동 경기.", "startRow": 2, "startCol": 1, "length": 3},
|
||||||
|
{"id": "c23_8", "number": 8, "direction": "DOWN", "word": "기차", "clue": "철로 위를 달리는 열차.", "startRow": 2, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c23_9", "number": 9, "direction": "ACROSS", "word": "차량", "clue": "모든 종류의 자동차와 기차 등.", "startRow": 3, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c23_10", "number": 10, "direction": "ACROSS", "word": "도시", "clue": "정치, 경제, 문화의 중심이 되는 큰 취락.", "startRow": 4, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c23_11", "number": 11, "direction": "DOWN", "word": "시장", "clue": "물건을 사고파는 장소.", "startRow": 4, "startCol": 3, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 24,
|
||||||
|
"title": "설상가상과 위기 극복",
|
||||||
|
"gridSize": 7,
|
||||||
|
"difficulty": 3,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c24_1", "number": 1, "direction": "ACROSS", "word": "설상가상", "clue": "눈 위에 또 서리가 덮인다는 뜻으로, 난처한 일이나 불행이 잇따라 일어남.", "startRow": 0, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c24_2", "number": 2, "direction": "DOWN", "word": "설경", "clue": "눈이 쌓인 아름다운 경치.", "startRow": 0, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c24_3", "number": 3, "direction": "DOWN", "word": "상장", "clue": "우수한 공로나 성적을 칭찬하여 주는 증서.", "startRow": 0, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c24_4", "number": 4, "direction": "DOWN", "word": "가족", "clue": "부모, 자식 등 혈연이나 입양으로 이루어진 공동체.", "startRow": 0, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c24_5", "number": 5, "direction": "DOWN", "word": "상처", "clue": "몸을 다쳐서 부상당한 자리나 마음의 괴로움.", "startRow": 0, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c24_6", "number": 6, "direction": "ACROSS", "word": "처방전", "clue": "의사가 환자에게 먹을 약을 적어 주는 문서.", "startRow": 1, "startCol": 3, "length": 3},
|
||||||
|
{"id": "c24_7", "number": 7, "direction": "DOWN", "word": "전화기", "clue": "소리를 전기 신호로 바꾸어 멀리 전달하는 기계.", "startRow": 1, "startCol": 5, "length": 3},
|
||||||
|
{"id": "c24_8", "number": 8, "direction": "ACROSS", "word": "기분", "clue": "마음속에 일어나는 기운이나 감정.", "startRow": 3, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c24_9", "number": 9, "direction": "DOWN", "word": "분수대", "clue": "물을 뿜어 올리도록 만든 설비나 장소.", "startRow": 3, "startCol": 6, "length": 3},
|
||||||
|
{"id": "c24_10", "number": 10, "direction": "ACROSS", "word": "무대", "clue": "노래나 춤, 연극을 공연하는 높은 자리.", "startRow": 5, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c24_11", "number": 11, "direction": "ACROSS", "word": "경찰", "clue": "치안과 질서를 지키는 사람이나 기관.", "startRow": 3, "startCol": 0, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 25,
|
||||||
|
"title": "호사다마와 지혜로운 처세",
|
||||||
|
"gridSize": 7,
|
||||||
|
"difficulty": 3,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c25_1", "number": 1, "direction": "ACROSS", "word": "호사다마", "clue": "좋은 일에는 방해가 되는 일이 많음.", "startRow": 0, "startCol": 1, "length": 4},
|
||||||
|
{"id": "c25_2", "number": 2, "direction": "DOWN", "word": "호수", "clue": "땅이 우묵하게 파여 물이 고인 큰 못.", "startRow": 0, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c25_3", "number": 3, "direction": "DOWN", "word": "사자", "clue": "백수의 왕으로 불리는 맹수.", "startRow": 0, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c25_4", "number": 4, "direction": "DOWN", "word": "다방", "clue": "차나 음료를 파는 가게.", "startRow": 0, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c25_5", "number": 5, "direction": "DOWN", "word": "마술", "clue": "재빠른 손놀림이나 도구로 눈속임을 보이는 기술.", "startRow": 0, "startCol": 4, "length": 2},
|
||||||
|
# Middle / Bottom Cluster (6 words)
|
||||||
|
{"id": "c25_6", "number": 6, "direction": "DOWN", "word": "술래", "clue": "숨바꼭질에서 숨은 사람을 찾는 사람.", "startRow": 1, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c25_7", "number": 7, "direction": "ACROSS", "word": "지구", "clue": "우리가 살고 있는 태양계의 행성.", "startRow": 3, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c25_8", "number": 8, "direction": "DOWN", "word": "구름", "clue": "공중에 떠 있는 수증기 덩어리.", "startRow": 3, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c25_9", "number": 9, "direction": "ACROSS", "word": "달리기", "clue": "발을 빨리 놀려 뛰는 운동.", "startRow": 5, "startCol": 2, "length": 3},
|
||||||
|
{"id": "c25_10", "number": 10, "direction": "DOWN", "word": "기차", "clue": "철로 위를 달리는 열차.", "startRow": 5, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c25_11", "number": 11, "direction": "ACROSS", "word": "수영", "clue": "물속을 헤엄치는 운동.", "startRow": 6, "startCol": 0, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 26,
|
||||||
|
"title": "전화위복과 희망",
|
||||||
|
"gridSize": 7,
|
||||||
|
"difficulty": 3,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c26_1", "number": 1, "direction": "ACROSS", "word": "전화위복", "clue": "재앙이 바뀌어 도리어 복이 됨.", "startRow": 0, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c26_2", "number": 2, "direction": "DOWN", "word": "전쟁", "clue": "국가나 집단 간에 무력을 써서 싸움.", "startRow": 0, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c26_3", "number": 3, "direction": "DOWN", "word": "화분", "clue": "꽃이나 식물을 심는 그릇.", "startRow": 0, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c26_4", "number": 4, "direction": "DOWN", "word": "위험", "clue": "해를 입거나 다칠 염려가 있는 상태.", "startRow": 0, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c26_5", "number": 5, "direction": "DOWN", "word": "복조리", "clue": "설날 복을 쌀 때 담으려고 벽에 걸어 두는 조리.", "startRow": 0, "startCol": 3, "length": 3},
|
||||||
|
{"id": "c26_6", "number": 6, "direction": "DOWN", "word": "분수", "clue": "물을 공중으로 내뿜는 장치.", "startRow": 1, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c26_7", "number": 7, "direction": "ACROSS", "word": "리모컨", "clue": "가전제품을 멀리서 원격 조종하는 장치.", "startRow": 2, "startCol": 3, "length": 3},
|
||||||
|
{"id": "c26_8", "number": 8, "direction": "DOWN", "word": "컨디션", "clue": "몸과 마음의 건강 상태나 조절 상태.", "startRow": 2, "startCol": 5, "length": 3},
|
||||||
|
{"id": "c26_9", "number": 9, "direction": "ACROSS", "word": "패션쇼", "clue": "새로운 옷의 유행을 보여주는 발표회.", "startRow": 4, "startCol": 4, "length": 3},
|
||||||
|
{"id": "c26_10", "number": 10, "direction": "DOWN", "word": "쇼핑", "clue": "물건을 사러 다니는 일.", "startRow": 4, "startCol": 6, "length": 2},
|
||||||
|
{"id": "c26_11", "number": 11, "direction": "ACROSS", "word": "사진", "clue": "카메라로 찍은 영상물.", "startRow": 5, "startCol": 1, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 27,
|
||||||
|
"title": "주경야독과 근면한 삶",
|
||||||
|
"gridSize": 7,
|
||||||
|
"difficulty": 3,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c27_1", "number": 1, "direction": "ACROSS", "word": "주경야독", "clue": "낮에는 밭을 갈고 밤에는 글을 읽는다는 뜻으로, 바쁜 틈을 타서 열심히 공부함.", "startRow": 0, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c27_2", "number": 2, "direction": "DOWN", "word": "주민", "clue": "일정한 지역에 살고 있는 사람들.", "startRow": 0, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c27_3", "number": 3, "direction": "DOWN", "word": "경찰", "clue": "사회의 질서와 안전을 유지하는 치안 조직.", "startRow": 0, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c27_4", "number": 4, "direction": "DOWN", "word": "야구", "clue": "배트로 공을 치고 베이스를 돌아 득점하는 구기 경기.", "startRow": 0, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c27_5", "number": 5, "direction": "DOWN", "word": "독서", "clue": "책을 읽음.", "startRow": 0, "startCol": 3, "length": 2},
|
||||||
|
{"id": "c27_6", "number": 6, "direction": "DOWN", "word": "의사", "clue": "의술을 베풀어 환자의 병을 고치는 전문 직업인.", "startRow": 1, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c27_7", "number": 7, "direction": "ACROSS", "word": "사랑", "clue": "아끼고 귀중히 여기는 따뜻한 마음.", "startRow": 2, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c27_8", "number": 8, "direction": "DOWN", "word": "랑데부", "clue": "우주선이나 사람들이 특정한 시간에 만남을 약속함.", "startRow": 2, "startCol": 5, "length": 3},
|
||||||
|
{"id": "c27_9", "number": 9, "direction": "ACROSS", "word": "부모", "clue": "아버지와 어머니를 아울러 이르는 말.", "startRow": 4, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c27_10", "number": 10, "direction": "DOWN", "word": "모습", "clue": "사람의 겉모양이나 사물의 자태.", "startRow": 4, "startCol": 6, "length": 2},
|
||||||
|
{"id": "c27_11", "number": 11, "direction": "ACROSS", "word": "민주주의", "clue": "국민이 권력을 가지고 스스로 다스리는 정치 체제.", "startRow": 5, "startCol": 0, "length": 4}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 28,
|
||||||
|
"title": "학수고대와 대기만성",
|
||||||
|
"gridSize": 7,
|
||||||
|
"difficulty": 3,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c28_1", "number": 1, "direction": "ACROSS", "word": "학수고대", "clue": "학의 목처럼 목을 길게 빼고 간절히 기다림.", "startRow": 0, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c28_2", "number": 2, "direction": "DOWN", "word": "학교", "clue": "학생들이 모여 배움을 익히는 곳.", "startRow": 0, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c28_3", "number": 3, "direction": "DOWN", "word": "수영", "clue": "물속을 헤엄침.", "startRow": 0, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c28_4", "number": 4, "direction": "DOWN", "word": "고향", "clue": "자기가 태어나서 자란 정든 고장.", "startRow": 0, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c28_5", "number": 5, "direction": "DOWN", "word": "대기만성", "clue": "큰 그릇은 늦게 이루어지듯, 크게 될 인물은 오랜 노력을 거쳐 늦게 빛을 봄.", "startRow": 0, "startCol": 3, "length": 4},
|
||||||
|
# Middle / Bottom Cluster: (3,3..6)=성심성의, (3,4..4,4)=심리, (3,6..4,6)=의사, (4,4..5)=리본, (4,5..5,5)=본부, (5,5..6)=부모, (5,0..1)=사진
|
||||||
|
{"id": "c28_6", "number": 6, "direction": "ACROSS", "word": "성심성의", "clue": "참된 정성과 참된 뜻을 다함.", "startRow": 3, "startCol": 3, "length": 4},
|
||||||
|
{"id": "c28_7", "number": 7, "direction": "DOWN", "word": "심리", "clue": "마음의 작용이나 의식 상태.", "startRow": 3, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c28_8", "number": 8, "direction": "DOWN", "word": "의사", "clue": "병을 치료하는 의사.", "startRow": 3, "startCol": 6, "length": 2},
|
||||||
|
{"id": "c28_9", "number": 9, "direction": "ACROSS", "word": "리본", "clue": "장식용 띠나 매듭.", "startRow": 4, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c28_10", "number": 10, "direction": "DOWN", "word": "본부", "clue": "조직의 중심이 되는 기관.", "startRow": 4, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c28_11", "number": 11, "direction": "ACROSS", "word": "부모", "clue": "아버지와 어머니.", "startRow": 5, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c28_12", "number": 12, "direction": "ACROSS", "word": "사진", "clue": "카메라로 찍은 사진.", "startRow": 5, "startCol": 0, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 29,
|
||||||
|
"title": "청출어람과 어부지리",
|
||||||
|
"gridSize": 7,
|
||||||
|
"difficulty": 3,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c29_1", "number": 1, "direction": "ACROSS", "word": "청출어람", "clue": "쪽풀에서 나온 푸른빛이 쪽풀보다 더 푸르다는 뜻으로, 제자가 스승보다 나음.", "startRow": 0, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c29_2", "number": 2, "direction": "DOWN", "word": "청소", "clue": "더러운 것을 쓸고 닦아 깨끗하게 함.", "startRow": 0, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c29_3", "number": 3, "direction": "DOWN", "word": "출발", "clue": "목적지를 향하여 길을 떠남.", "startRow": 0, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c29_4", "number": 4, "direction": "DOWN", "word": "어부지리", "clue": "둘이 다투는 사이에 제삼자가 힘들이지 않고 이익을 챙김.", "startRow": 0, "startCol": 2, "length": 4},
|
||||||
|
{"id": "c29_5", "number": 5, "direction": "DOWN", "word": "람보", "clue": "강인한 전사의 대명사로 불리는 영화 속 주인공.", "startRow": 0, "startCol": 3, "length": 2},
|
||||||
|
# Middle / Bottom Cluster: (3,2..4)=리모컨, (3,4..5,4)=컨트리, (5,4..5)=리듬, (5,5..6,5)=듬직, (4,5..6)=인사, (6,0..1)=봄날
|
||||||
|
{"id": "c29_6", "number": 6, "direction": "ACROSS", "word": "리모컨", "clue": "기계를 멀리서 원격 제어하는 무선 조종기.", "startRow": 3, "startCol": 2, "length": 3},
|
||||||
|
{"id": "c29_7", "number": 7, "direction": "DOWN", "word": "컨트리", "clue": "시골 풍경이나 미국 남부의 민속 음악 장르.", "startRow": 3, "startCol": 4, "length": 3},
|
||||||
|
{"id": "c29_8", "number": 8, "direction": "ACROSS", "word": "리듬", "clue": "음악에서 일정한 규칙에 따라 반복되는 흐름.", "startRow": 5, "startCol": 4, "length": 2},
|
||||||
|
{"id": "c29_9", "number": 9, "direction": "DOWN", "word": "듬직", "clue": "생김새나 됨됨이가 믿음직스러움.", "startRow": 5, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c29_10", "number": 10, "direction": "ACROSS", "word": "인사", "clue": "마주 보며 안부를 묻거나 예를 표하는 일.", "startRow": 4, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c29_11", "number": 11, "direction": "ACROSS", "word": "봄날", "clue": "따뜻하고 화창한 봄의 날씨.", "startRow": 6, "startCol": 0, "length": 2}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stageNumber": 30,
|
||||||
|
"title": "화룡점정과 정정당당",
|
||||||
|
"gridSize": 7,
|
||||||
|
"difficulty": 3,
|
||||||
|
"clues": [
|
||||||
|
{"id": "c30_1", "number": 1, "direction": "ACROSS", "word": "화룡점정", "clue": "용을 그리고 마지막에 눈동자를 찍어 완성한다는 뜻으로, 가장 핵심적인 부분을 마무리함.", "startRow": 0, "startCol": 0, "length": 4},
|
||||||
|
{"id": "c30_2", "number": 2, "direction": "DOWN", "word": "화분", "clue": "꽃이나 식물을 심는 그릇.", "startRow": 0, "startCol": 0, "length": 2},
|
||||||
|
{"id": "c30_3", "number": 3, "direction": "DOWN", "word": "룡왕", "clue": "바다나 물속을 다스린다는 전설의 용왕.", "startRow": 0, "startCol": 1, "length": 2},
|
||||||
|
{"id": "c30_4", "number": 4, "direction": "DOWN", "word": "점심", "clue": "낮에 끼니로 먹는 음식.", "startRow": 0, "startCol": 2, "length": 2},
|
||||||
|
{"id": "c30_5", "number": 5, "direction": "DOWN", "word": "정정당당", "clue": "태도나 처사가 올바르고 떳떳함.", "startRow": 0, "startCol": 3, "length": 4},
|
||||||
|
# Middle / Bottom Cluster: (3,3..6)=당랑거철, (3,6..4,6)=철도, (4,5..6)=지도, (4,5..5,5)=지구, (5,5..6)=구름, (5,6..6,6)=름바, (6,5..6)=삼바
|
||||||
|
{"id": "c30_6", "number": 6, "direction": "ACROSS", "word": "당랑거철", "clue": "사마귀가 수레바퀴를 막아선다는 뜻으로, 제 분수도 모르고 강적에게 덤빔.", "startRow": 3, "startCol": 3, "length": 4},
|
||||||
|
{"id": "c30_7", "number": 7, "direction": "DOWN", "word": "철도", "clue": "기차가 안전하게 달릴 수 있도록 깐 레일 길.", "startRow": 3, "startCol": 6, "length": 2},
|
||||||
|
{"id": "c30_8", "number": 8, "direction": "ACROSS", "word": "지도", "clue": "지표면의 모습을 축소하여 평면에 나타낸 그림.", "startRow": 4, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c30_9", "number": 9, "direction": "DOWN", "word": "지구", "clue": "인류가 살고 있는 행성.", "startRow": 4, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c30_10", "number": 10, "direction": "ACROSS", "word": "구름", "clue": "하늘에 하얗게 떠 있는 수증기.", "startRow": 5, "startCol": 5, "length": 2},
|
||||||
|
{"id": "c30_11", "number": 11, "direction": "DOWN", "word": "름바", "clue": "정열적인 쿠바의 전통 라틴 댄스.", "startRow": 5, "startCol": 6, "length": 2},
|
||||||
|
{"id": "c30_12", "number": 12, "direction": "ACROSS", "word": "삼바", "clue": "브라질의 대표적인 열정적인 전통 춤과 음악.", "startRow": 6, "startCol": 5, "length": 2}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
||||||
|
# Validation
|
||||||
|
all_ok = True
|
||||||
|
for stage in stages:
|
||||||
|
ok, msg = validate_stage(stage)
|
||||||
|
if not ok:
|
||||||
|
print(f"[FAIL] {msg}")
|
||||||
|
all_ok = False
|
||||||
|
else:
|
||||||
|
print(f"[PASS] Stage {stage['stageNumber']:2d} ({stage['title']}): {len(stage['clues']):2d} clues, grid {stage['gridSize']}x{stage['gridSize']}")
|
||||||
|
|
||||||
|
if not all_ok:
|
||||||
|
print("Validation failed!")
|
||||||
|
exit(1)
|
||||||
|
|
||||||
|
# Write stages.json
|
||||||
|
stages_path = "app/src/main/assets/data/stages.json"
|
||||||
|
with open(stages_path, "w", encoding="utf-8") as f:
|
||||||
|
json.dump(stages, f, ensure_ascii=False, indent=2)
|
||||||
|
print(f"Successfully wrote {len(stages)} stages to {stages_path}")
|
||||||
|
|
||||||
|
# Write CSV for Google Sheets
|
||||||
|
csv_path = "tools/stages_sheet_import.csv"
|
||||||
|
with open(csv_path, "w", encoding="utf-8-sig", newline="") as f:
|
||||||
|
writer = csv.writer(f)
|
||||||
|
writer.writerow([
|
||||||
|
"stageNumber", "title", "gridSize", "difficulty",
|
||||||
|
"clueId", "number", "direction", "word", "clue", "startRow", "startCol", "length"
|
||||||
|
])
|
||||||
|
for stage in stages:
|
||||||
|
for clue in stage['clues']:
|
||||||
|
writer.writerow([
|
||||||
|
stage['stageNumber'], stage['title'], stage['gridSize'], stage['difficulty'],
|
||||||
|
clue['id'], clue['number'], clue['direction'], clue['word'], clue['clue'],
|
||||||
|
clue['startRow'], clue['startCol'], clue['length']
|
||||||
|
])
|
||||||
|
print(f"Successfully wrote Google Sheets CSV to {csv_path}")
|
||||||
@@ -0,0 +1,236 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"num": "1",
|
||||||
|
"word": "가가대소",
|
||||||
|
"hanja": "呵呵大笑",
|
||||||
|
"meaning": "너무"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "2",
|
||||||
|
"word": "가급인족",
|
||||||
|
"hanja": "家給人足",
|
||||||
|
"meaning": "집집마다"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "3",
|
||||||
|
"word": "가기이방",
|
||||||
|
"hanja": "可欺以方",
|
||||||
|
"meaning": "그럴듯한"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "4",
|
||||||
|
"word": "가농성진",
|
||||||
|
"hanja": "假弄成眞",
|
||||||
|
"meaning": "처음에"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "5",
|
||||||
|
"word": "가담항설",
|
||||||
|
"hanja": "街錟巷說",
|
||||||
|
"meaning": "길거리에"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "6",
|
||||||
|
"word": "가동가서",
|
||||||
|
"hanja": "可東可西",
|
||||||
|
"meaning": "동쪽이라도"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "7",
|
||||||
|
"word": "가동주졸",
|
||||||
|
"hanja": "街童走卒",
|
||||||
|
"meaning": "길거리에서"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "8",
|
||||||
|
"word": "가렴주구",
|
||||||
|
"hanja": "苛斂誅求",
|
||||||
|
"meaning": "세금"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "10",
|
||||||
|
"word": "가부지친",
|
||||||
|
"hanja": "葭莩之親",
|
||||||
|
"meaning": "촌수가"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "13",
|
||||||
|
"word": "가서만금",
|
||||||
|
"hanja": "家書萬金",
|
||||||
|
"meaning": "집에서"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "14",
|
||||||
|
"word": "가언선행",
|
||||||
|
"hanja": "嘉言善行",
|
||||||
|
"meaning": "좋은"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "15",
|
||||||
|
"word": "가유호세",
|
||||||
|
"hanja": "家諭戶說",
|
||||||
|
"meaning": "집집마다"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "16",
|
||||||
|
"word": "가인박명",
|
||||||
|
"hanja": "佳人薄命",
|
||||||
|
"meaning": "여자의"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "19",
|
||||||
|
"word": "각고면려",
|
||||||
|
"hanja": "刻苦勉勵",
|
||||||
|
"meaning": "심신의"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "20",
|
||||||
|
"word": "각곡유목",
|
||||||
|
"hanja": "刻鵠類鶩",
|
||||||
|
"meaning": "따오기를"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "21",
|
||||||
|
"word": "각골난망",
|
||||||
|
"hanja": "刻骨難忘",
|
||||||
|
"meaning": "은혜를"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "22",
|
||||||
|
"word": "각골통한",
|
||||||
|
"hanja": "刻骨痛恨",
|
||||||
|
"meaning": "뼈에"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "23",
|
||||||
|
"word": "각자도생",
|
||||||
|
"hanja": "各自圖生",
|
||||||
|
"meaning": "제각기"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "24",
|
||||||
|
"word": "각주구검",
|
||||||
|
"hanja": "刻舟求劍",
|
||||||
|
"meaning": "지나치게"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "25",
|
||||||
|
"word": "간난신고",
|
||||||
|
"hanja": "艱難辛苦",
|
||||||
|
"meaning": "(갖은"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "26",
|
||||||
|
"word": "간뇌도지",
|
||||||
|
"hanja": "肝腦塗地",
|
||||||
|
"meaning": "몸의"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "27",
|
||||||
|
"word": "간담상조",
|
||||||
|
"hanja": "肝膽相照",
|
||||||
|
"meaning": "서로의"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "28",
|
||||||
|
"word": "간두지세",
|
||||||
|
"hanja": "竿頭之勢",
|
||||||
|
"meaning": "댓가지"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "29",
|
||||||
|
"word": "간성난색",
|
||||||
|
"hanja": "姦聲亂色",
|
||||||
|
"meaning": "간사한"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "30",
|
||||||
|
"word": "간성지장",
|
||||||
|
"hanja": "干城之將",
|
||||||
|
"meaning": "나라를"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "31",
|
||||||
|
"word": "간세지재",
|
||||||
|
"hanja": "間世之材",
|
||||||
|
"meaning": "나라를"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "33",
|
||||||
|
"word": "간운보월",
|
||||||
|
"hanja": "看雲步月",
|
||||||
|
"meaning": "객지에서"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "35",
|
||||||
|
"word": "간장막야",
|
||||||
|
"hanja": "干將莫耶",
|
||||||
|
"meaning": "명검도"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "36",
|
||||||
|
"word": "갈이천정",
|
||||||
|
"hanja": "渴而穿井",
|
||||||
|
"meaning": "목이"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "38",
|
||||||
|
"word": "감불생심",
|
||||||
|
"hanja": "敢不生心",
|
||||||
|
"meaning": "감히"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "40",
|
||||||
|
"word": "감불생심",
|
||||||
|
"hanja": "敢不生心",
|
||||||
|
"meaning": "힘이"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "41",
|
||||||
|
"word": "감언이설",
|
||||||
|
"hanja": "甘言利說",
|
||||||
|
"meaning": "남의"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "42",
|
||||||
|
"word": "감언지지",
|
||||||
|
"hanja": "敢言之地",
|
||||||
|
"meaning": "거리낌"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "747",
|
||||||
|
"word": "박기후인",
|
||||||
|
"hanja": "薄己厚人",
|
||||||
|
"meaning": "남에게는"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "809",
|
||||||
|
"word": "백이숙제",
|
||||||
|
"hanja": "백이숙제",
|
||||||
|
"meaning": "중국"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "947",
|
||||||
|
"word": "빙자옥질",
|
||||||
|
"hanja": "氷姿玉質",
|
||||||
|
"meaning": "얼음같이"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "1582",
|
||||||
|
"word": "절성기지",
|
||||||
|
"hanja": "節聖棄智",
|
||||||
|
"meaning": "성스러움을"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "1683",
|
||||||
|
"word": "진퇴유곡",
|
||||||
|
"hanja": "進退維谷",
|
||||||
|
"meaning": "가지도"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"num": "1826",
|
||||||
|
"word": "파부침주",
|
||||||
|
"hanja": "破釜沈舟",
|
||||||
|
"meaning": "살아서"
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -0,0 +1,257 @@
|
|||||||
|
stageNumber,title,gridSize,difficulty,clueId,number,direction,word,clue,startRow,startCol,length
|
||||||
|
1,첫걸음: 봄날의 자연,5,1,c1_1,1,ACROSS,봄바람,봄철에 불어오는 따뜻하고 부드러운 바람.,1,0,3
|
||||||
|
1,첫걸음: 봄날의 자연,5,1,c1_2,2,DOWN,바다,지구 위에서 육지를 둘러싼 넓고 짠 물.,1,1,2
|
||||||
|
1,첫걸음: 봄날의 자연,5,1,c1_3,3,ACROSS,다람쥐,도토리를 좋아하고 꼬리가 복슬복슬한 작은 동물.,2,1,3
|
||||||
|
1,첫걸음: 봄날의 자연,5,1,c1_4,4,DOWN,쥐구멍,쥐가 드나들거나 숨는 작은 구멍.,2,3,3
|
||||||
|
2,학교와 친구들,5,1,c2_1,1,ACROSS,학교,학생들이 모여 지식과 배움을 익히는 곳.,1,1,2
|
||||||
|
2,학교와 친구들,5,1,c2_2,2,DOWN,교실,학교에서 수업을 받는 방.,1,2,2
|
||||||
|
2,학교와 친구들,5,1,c2_3,3,ACROSS,실내화,건물이나 방 안에서 신는 가벼운 신발.,2,2,3
|
||||||
|
2,학교와 친구들,5,1,c2_4,4,DOWN,화분,흙을 담아 꽃이나 식물을 심는 그릇.,2,4,2
|
||||||
|
2,학교와 친구들,5,1,c2_5,5,ACROSS,친구,가깝게 오래 사귄 벗.,4,0,2
|
||||||
|
3,하늘과 날씨,5,1,c3_1,1,ACROSS,구름,공중의 수증기가 엉겨서 하얗게 떠 있는 것.,1,0,2
|
||||||
|
3,하늘과 날씨,5,1,c3_2,2,DOWN,구슬,둥글고 투명하거나 반짝이는 물건.,1,0,2
|
||||||
|
3,하늘과 날씨,5,1,c3_3,3,ACROSS,슬기,사리를 밝히고 지혜롭게 처리하는 능력.,2,0,2
|
||||||
|
3,하늘과 날씨,5,1,c3_4,4,DOWN,기차,철도 위를 달리는 교통수단.,2,1,2
|
||||||
|
3,하늘과 날씨,5,1,c3_5,5,ACROSS,하늘,땅 위를 덮고 있는 푸르고 넓은 공간.,4,2,2
|
||||||
|
4,우리 집과 가족,5,1,c4_1,1,ACROSS,가족,"부모, 형제 등 혈연으로 맺어진 사람들의 공동체.",1,1,2
|
||||||
|
4,우리 집과 가족,5,1,c4_2,2,DOWN,가방,물건이나 책을 넣어 들고 다니는 세간.,1,1,2
|
||||||
|
4,우리 집과 가족,5,1,c4_3,3,ACROSS,방안,어떤 방의 내부.,2,1,2
|
||||||
|
4,우리 집과 가족,5,1,c4_4,4,DOWN,안경,눈이 잘 보이도록 코 위에 걸쳐 쓰는 물건.,2,2,2
|
||||||
|
4,우리 집과 가족,5,1,c4_5,5,ACROSS,경치,자연의 아름다운 모습이나 풍경.,3,2,2
|
||||||
|
5,아침 식탁과 음식,5,1,c5_1,1,ACROSS,식사,밥이나 음식을 먹는 일.,1,0,2
|
||||||
|
5,아침 식탁과 음식,5,1,c5_2,2,DOWN,사과,가을에 붉게 익는 달콤하고 아삭한 과일.,1,1,2
|
||||||
|
5,아침 식탁과 음식,5,1,c5_3,3,ACROSS,과자,밀가루나 쌀로 바삭하게 구운 군것질거리.,2,1,2
|
||||||
|
5,아침 식탁과 음식,5,1,c5_4,4,DOWN,자석,쇠붙이를 끌어당기는 성질을 가진 물체.,2,2,2
|
||||||
|
5,아침 식탁과 음식,5,1,c5_5,5,ACROSS,우유,소의 젖으로 만든 하얗고 영양가 높은 음료.,4,2,2
|
||||||
|
6,도심과 교통,6,1,c6_1,1,ACROSS,자동차,엔진의 힘으로 바퀴를 굴려 달리는 차.,0,0,3
|
||||||
|
6,도심과 교통,6,1,c6_2,2,DOWN,차량,모든 종류의 자동차와 기차 등을 통틀어 이르는 말.,0,2,2
|
||||||
|
6,도심과 교통,6,1,c6_3,3,ACROSS,관광,다른 고장이나 나라의 풍경과 풍습을 구경함.,1,3,2
|
||||||
|
6,도심과 교통,6,1,c6_4,4,DOWN,자동,스스로 작동함.,0,0,2
|
||||||
|
6,도심과 교통,6,1,c6_5,5,ACROSS,신호등,도로에서 교통 신호를 나타내는 전등.,4,2,3
|
||||||
|
6,도심과 교통,6,1,c6_6,6,DOWN,등산,운동이나 휴양을 위해 산에 오름.,4,4,2
|
||||||
|
7,시장과 장보기,6,1,c7_1,1,ACROSS,시장,물건을 사고파는 장소.,0,0,2
|
||||||
|
7,시장과 장보기,6,1,c7_2,2,DOWN,장바구니,시장에서 산 물건을 담는 바구니나 가방.,0,1,4
|
||||||
|
7,시장과 장보기,6,1,c7_3,3,ACROSS,구름다리,공중에 높이 놓아 건너다니게 한 다리.,2,1,4
|
||||||
|
7,시장과 장보기,6,1,c7_4,4,DOWN,다림질,옷의 주름을 펴기 위해 다리미로 문지르는 일.,2,3,3
|
||||||
|
7,시장과 장보기,6,1,c7_5,5,ACROSS,가격,물건의 가치를 돈으로 나타낸 액수.,4,4,2
|
||||||
|
7,시장과 장보기,6,1,c7_6,6,DOWN,격식,격에 맞는 형식이나 예절.,4,5,2
|
||||||
|
8,동물원과 자연,6,1,c8_1,1,ACROSS,동물원,여러 가지 짐승을 모아 기르며 사람들에게 구경시키는 곳.,1,0,3
|
||||||
|
8,동물원과 자연,6,1,c8_2,2,DOWN,원숭이,나무를 잘 타고 꼬리가 긴 영장류 동물.,1,2,3
|
||||||
|
8,동물원과 자연,6,1,c8_3,3,ACROSS,이모,어머니의 여자 형제.,3,2,2
|
||||||
|
8,동물원과 자연,6,1,c8_4,4,DOWN,물고기,물속에 살며 아가미로 숨을 쉬는 동물.,1,1,3
|
||||||
|
8,동물원과 자연,6,1,c8_5,5,DOWN,신호,어떤 사실을 알리기 위한 일정한 부호.,4,0,2
|
||||||
|
8,동물원과 자연,6,1,c8_6,6,ACROSS,호랑이,줄무늬가 있는 맹수이자 백수의 왕.,5,0,3
|
||||||
|
9,여름 바다와 여행,6,1,c9_1,1,ACROSS,해수욕장,여름에 바닷물에서 멱을 감고 놀 수 있도록 마련된 곳.,1,0,4
|
||||||
|
9,여름 바다와 여행,6,1,c9_2,2,DOWN,장마,여름철에 여러 날 동안 계속해서 내리는 비.,1,3,2
|
||||||
|
9,여름 바다와 여행,6,1,c9_3,3,ACROSS,마음,"사람의 생각, 감정, 기억이 일어나는 중심.",2,3,2
|
||||||
|
9,여름 바다와 여행,6,1,c9_4,4,DOWN,수영,물속을 헤엄침.,1,1,2
|
||||||
|
9,여름 바다와 여행,6,1,c9_5,5,ACROSS,모래성,모래를 쌓아서 만든 성.,4,1,3
|
||||||
|
9,여름 바다와 여행,6,1,c9_6,6,DOWN,성공,목적한 바를 순조롭게 이룸.,4,3,2
|
||||||
|
9,여름 바다와 여행,6,1,c9_7,7,ACROSS,공부,학문이나 기술을 배우고 닦음.,5,3,2
|
||||||
|
10,도서관과 지식,6,1,c10_1,1,ACROSS,도서관,많은 책과 자료를 모아 두고 사람들이 읽을 수 있게 한 곳.,0,1,3
|
||||||
|
10,도서관과 지식,6,1,c10_2,2,DOWN,서점,책을 파는 상점.,0,2,2
|
||||||
|
10,도서관과 지식,6,1,c10_3,3,ACROSS,점수,시험이나 경기에서 얻은 성적의 수치.,1,2,2
|
||||||
|
10,도서관과 지식,6,1,c10_4,4,DOWN,도둑,남의 물건을 훔치는 사람.,0,1,2
|
||||||
|
10,도서관과 지식,6,1,c10_5,5,ACROSS,독서,책을 읽음.,3,3,2
|
||||||
|
10,도서관과 지식,6,1,c10_6,6,DOWN,서점,책을 사서 보는 서점.,3,4,2
|
||||||
|
10,도서관과 지식,6,1,c10_7,7,ACROSS,점심,낮에 먹는 끼니.,4,4,2
|
||||||
|
11,사자성어의 시작: 일석이조,6,2,c11_1,1,ACROSS,일석이조,"돌 한 개를 던져 새 두 마리를 잡는다는 뜻으로, 한 가지 일로 두 가지 이득을 얻음.",1,0,4
|
||||||
|
11,사자성어의 시작: 일석이조,6,2,c11_2,2,DOWN,조상,지나간 세대의 조부모 이상의 웃대 어른.,1,3,2
|
||||||
|
11,사자성어의 시작: 일석이조,6,2,c11_3,3,ACROSS,상장,우수한 성적이나 공로를 칭찬하여 주는 증서.,2,3,2
|
||||||
|
11,사자성어의 시작: 일석이조,6,2,c11_4,4,DOWN,장미,가시가 있고 향기로운 붉은 꽃.,2,4,2
|
||||||
|
11,사자성어의 시작: 일석이조,6,2,c11_5,5,ACROSS,미술관,미술품을 전시하고 보존하는 곳.,4,1,3
|
||||||
|
11,사자성어의 시작: 일석이조,6,2,c11_6,6,DOWN,관심,어떤 일에 마음을 기울임.,4,3,2
|
||||||
|
11,사자성어의 시작: 일석이조,6,2,c11_7,7,ACROSS,심리,마음의 작용이나 의식의 상태.,5,3,2
|
||||||
|
11,사자성어의 시작: 일석이조,6,2,c11_8,8,DOWN,일기,날마다 있었던 일을 적은 기록.,1,0,2
|
||||||
|
12,작심삼일과 결심,6,2,c12_1,1,ACROSS,작심삼일,"결심한 마음이 사흘을 가지 못한다는 뜻으로, 결심이 굳지 못함.",1,0,4
|
||||||
|
12,작심삼일과 결심,6,2,c12_2,2,DOWN,일기장,날마다 있었던 일을 적는 공책.,1,3,3
|
||||||
|
12,작심삼일과 결심,6,2,c12_3,3,ACROSS,장소,사람이 살거나 어떤 일이 일어나는 곳.,3,3,2
|
||||||
|
12,작심삼일과 결심,6,2,c12_4,4,DOWN,작가,문학이나 예술 작품을 창작하는 사람.,1,0,2
|
||||||
|
12,작심삼일과 결심,6,2,c12_5,5,ACROSS,가수,노래를 전문으로 부르는 사람.,2,0,2
|
||||||
|
12,작심삼일과 결심,6,2,c12_6,6,ACROSS,소망,바라고 바라는 마음.,4,3,2
|
||||||
|
12,작심삼일과 결심,6,2,c12_7,7,DOWN,망원,먼 곳을 바라봄.,4,4,2
|
||||||
|
12,작심삼일과 결심,6,2,c12_8,8,ACROSS,원인,어떤 사물이나 현상을 일으키는 근본.,5,4,2
|
||||||
|
13,동고동락과 우정,6,2,c13_1,1,ACROSS,동고동락,괴로움과 즐거움을 함께 나눔.,1,0,4
|
||||||
|
13,동고동락과 우정,6,2,c13_2,2,DOWN,락원,근심 없는 즐거운 곳(낙원의 본음).,1,3,2
|
||||||
|
13,동고동락과 우정,6,2,c13_3,3,ACROSS,원목,베어 낸 그대로의 통나무.,2,3,2
|
||||||
|
13,동고동락과 우정,6,2,c13_4,4,DOWN,목수,나무를 다루어 집을 짓거나 가구를 만드는 사람.,2,4,2
|
||||||
|
13,동고동락과 우정,6,2,c13_5,5,ACROSS,수영장,수영을 할 수 있도록 물을 채워 만든 시설.,4,1,3
|
||||||
|
13,동고동락과 우정,6,2,c13_6,6,DOWN,장갑,손을 보호하거나 따뜻하게 하기 위해 끼는 물건.,4,3,2
|
||||||
|
13,동고동락과 우정,6,2,c13_7,7,ACROSS,갑옷,옛날 군사가 칼이나 화살을 막기 위해 입던 쇠 옷.,5,3,2
|
||||||
|
13,동고동락과 우정,6,2,c13_8,8,DOWN,동물,살아 움직이는 생물.,1,0,2
|
||||||
|
14,권선징악과 교훈,6,2,c14_1,1,ACROSS,권선징악,착한 행실을 권장하고 악한 행실을 징벌함.,1,0,4
|
||||||
|
14,권선징악과 교훈,6,2,c14_2,2,DOWN,악마,사람을 꾀어 악한 길로 빠지게 하는 존재.,1,3,2
|
||||||
|
14,권선징악과 교훈,6,2,c14_3,3,ACROSS,마술,빠른 손놀림이나 도구로 신기한 눈속임을 보여주는 기술.,2,3,2
|
||||||
|
14,권선징악과 교훈,6,2,c14_4,4,DOWN,술래,숨바꼭질이나 잡기 놀이에서 숨은 사람을 찾는 아이.,2,4,2
|
||||||
|
14,권선징악과 교훈,6,2,c14_5,5,ACROSS,선물,남에게 정을 나타내어 거저 주는 물건.,4,0,2
|
||||||
|
14,권선징악과 교훈,6,2,c14_6,6,DOWN,물결,물에서 일어나는 잔물결.,4,1,2
|
||||||
|
14,권선징악과 교훈,6,2,c14_7,7,ACROSS,결정,어떤 일을 분명하게 정함.,5,1,2
|
||||||
|
14,권선징악과 교훈,6,2,c14_8,8,DOWN,인정,확실히 그렇다고 인정함.,4,2,2
|
||||||
|
15,다다익선과 풍요,6,2,c15_1,1,ACROSS,다다익선,많으면 많을수록 더욱 좋음.,1,0,4
|
||||||
|
15,다다익선과 풍요,6,2,c15_2,2,DOWN,선생님,학생을 가르치고 지도하는 어른.,1,3,3
|
||||||
|
15,다다익선과 풍요,6,2,c15_3,3,ACROSS,님프,신화에 나오는 숲이나 샘의 요정.,3,3,2
|
||||||
|
15,다다익선과 풍요,6,2,c15_4,4,DOWN,다림질,옷의 주름을 펴기 위해 다리미로 문지르는 일.,1,1,3
|
||||||
|
15,다다익선과 풍요,6,2,c15_5,5,ACROSS,질문,모르는 것을 알기 위해 묻는 말.,3,1,2
|
||||||
|
15,다다익선과 풍요,6,2,c15_6,6,ACROSS,음악,"박자, 가락, 음성 등을 조화시켜 감정을 나타내는 예술.",4,1,2
|
||||||
|
15,다다익선과 풍요,6,2,c15_7,7,DOWN,악기,음악을 연주하는 데 쓰는 기구.,4,2,2
|
||||||
|
15,다다익선과 풍요,6,2,c15_8,8,ACROSS,기차표,기차를 탈 수 있는 승차권.,5,2,3
|
||||||
|
16,온고지신과 배움의 길,7,2,c16_1,1,ACROSS,온고지신,옛것을 익히고 그것을 미루어서 새것을 앎.,1,1,4
|
||||||
|
16,온고지신과 배움의 길,7,2,c16_2,2,DOWN,신호등,도로에서 교통 신호를 나타내는 등.,1,4,3
|
||||||
|
16,온고지신과 배움의 길,7,2,c16_3,3,ACROSS,등대,밤에 바다의 배들이 안전하게 길을 찾도록 불을 비추는 탑.,3,4,2
|
||||||
|
16,온고지신과 배움의 길,7,2,c16_4,4,DOWN,대화,마주 대하여 이야기를 주고받음.,3,5,2
|
||||||
|
16,온고지신과 배움의 길,7,2,c16_5,5,DOWN,고향,자기가 태어나서 자란 곳.,1,2,2
|
||||||
|
16,온고지신과 배움의 길,7,2,c16_6,6,ACROSS,향기,좋은 냄새.,2,2,2
|
||||||
|
16,온고지신과 배움의 길,7,2,c16_7,7,ACROSS,화분,흙을 담아 식물을 기르는 그릇.,4,5,2
|
||||||
|
16,온고지신과 배움의 길,7,2,c16_8,8,ACROSS,학생,학교에서 공부하는 사람.,5,1,2
|
||||||
|
16,온고지신과 배움의 길,7,2,c16_9,9,DOWN,학습,배우고 익힘.,5,1,2
|
||||||
|
17,배은망덕과 도덕,7,2,c17_1,1,ACROSS,배은망덕,은혜를 잊고 도리어 배반하여 덕을 해침.,1,1,4
|
||||||
|
17,배은망덕과 도덕,7,2,c17_2,2,DOWN,덕담,남이 잘되기를 바라는 따뜻한 말.,1,4,2
|
||||||
|
17,배은망덕과 도덕,7,2,c17_3,3,ACROSS,담요,몸을 덮어 따뜻하게 하는 두꺼운 천.,2,4,2
|
||||||
|
17,배은망덕과 도덕,7,2,c17_4,4,DOWN,요리사,음식을 전문으로 만드는 사람.,2,5,3
|
||||||
|
17,배은망덕과 도덕,7,2,c17_5,5,DOWN,은혜,고맙게 베풀어 주는 신세나 사랑.,1,2,2
|
||||||
|
17,배은망덕과 도덕,7,2,c17_6,6,ACROSS,혜성,태양 주위를 긴 궤도로 도는 꼬리 달린 별.,2,2,2
|
||||||
|
17,배은망덕과 도덕,7,2,c17_7,7,ACROSS,사진,카메라로 찍은 영상.,4,5,2
|
||||||
|
17,배은망덕과 도덕,7,2,c17_8,8,ACROSS,진실,거짓이 없는 참된 사실.,5,4,2
|
||||||
|
17,배은망덕과 도덕,7,2,c17_9,9,DOWN,실내,방이나 건물의 안쪽.,5,5,2
|
||||||
|
18,유비무환과 철저한 준비,7,2,c18_1,1,ACROSS,유비무환,미리 준비가 되어 있으면 뒷걱정이 없음.,1,1,4
|
||||||
|
18,유비무환과 철저한 준비,7,2,c18_2,2,DOWN,환자,병에 걸려 치료를 받아야 하는 사람.,1,4,2
|
||||||
|
18,유비무환과 철저한 준비,7,2,c18_3,3,ACROSS,자동차,엔진의 힘으로 바퀴를 굴려 달리는 차.,2,4,3
|
||||||
|
18,유비무환과 철저한 준비,7,2,c18_4,4,DOWN,차량,모든 종류의 차와 기차를 통틀어 이르는 말.,2,6,2
|
||||||
|
18,유비무환과 철저한 준비,7,2,c18_5,5,DOWN,비행기,공중을 날아다니는 교통수단.,1,2,3
|
||||||
|
18,유비무환과 철저한 준비,7,2,c18_6,6,ACROSS,기분,마음의 상태나 느낌.,3,2,2
|
||||||
|
18,유비무환과 철저한 준비,7,2,c18_7,7,ACROSS,수량,물의 양이나 사물의 수치.,3,5,2
|
||||||
|
18,유비무환과 철저한 준비,7,2,c18_8,8,ACROSS,산길,산속에 나 있는 좁은 길.,5,2,2
|
||||||
|
18,유비무환과 철저한 준비,7,2,c18_9,9,DOWN,길목,길이 좁아지는 길의 요긴한 어귀.,5,3,2
|
||||||
|
19,동문서답과 언어의 유희,7,3,c19_1,1,ACROSS,동문서답,"동쪽을 묻는데 서쪽을 대답한다는 뜻으로, 엉뚱한 대답을 함.",0,0,4
|
||||||
|
19,동문서답과 언어의 유희,7,3,c19_2,2,DOWN,동물원,여러 짐승을 모아 구경시키는 곳.,0,0,3
|
||||||
|
19,동문서답과 언어의 유희,7,3,c19_3,3,DOWN,답변,물음에 대답함.,0,3,2
|
||||||
|
19,동문서답과 언어의 유희,7,3,c19_4,4,ACROSS,변호사,법정에서 피고인을 변호하는 법률 전문가.,1,3,3
|
||||||
|
19,동문서답과 언어의 유희,7,3,c19_5,5,DOWN,사과,붉고 달콤한 과일.,1,5,2
|
||||||
|
19,동문서답과 언어의 유희,7,3,c19_6,6,ACROSS,원목,베어 낸 그대로의 통나무.,2,0,2
|
||||||
|
19,동문서답과 언어의 유희,7,3,c19_7,7,DOWN,목수,나무를 다루어 가구나 건물을 만드는 기술자.,2,1,2
|
||||||
|
19,동문서답과 언어의 유희,7,3,c19_8,8,ACROSS,수심,물의 깊이 또는 근심하는 마음.,3,1,2
|
||||||
|
19,동문서답과 언어의 유희,7,3,c19_9,9,DOWN,심리,마음의 작용이나 의식의 상태.,3,2,2
|
||||||
|
19,동문서답과 언어의 유희,7,3,c19_10,10,ACROSS,리본,매듭을 짓거나 장식하는 띠.,4,2,2
|
||||||
|
19,동문서답과 언어의 유희,7,3,c19_11,11,DOWN,본부,어떤 조직의 중심이 되는 부서.,4,3,2
|
||||||
|
20,우이독경과 배움의 자세,7,3,c20_1,1,ACROSS,우이독경,"소의 귀에 경 읽기라는 뜻으로, 아무리 가르쳐 주어도 알아듣지 못함.",0,0,4
|
||||||
|
20,우이독경과 배움의 자세,7,3,c20_2,2,DOWN,우유,암소의 젖으로 만든 영양 음료.,0,0,2
|
||||||
|
20,우이독경과 배움의 자세,7,3,c20_3,3,DOWN,독서실,책을 읽거나 공부할 수 있도록 마련된 방.,0,2,3
|
||||||
|
20,우이독경과 배움의 자세,7,3,c20_4,4,DOWN,경찰,사회의 질서와 치안을 지키는 조직.,0,3,2
|
||||||
|
20,우이독경과 배움의 자세,7,3,c20_5,5,ACROSS,유리,투명하고 단단하며 깨지기 쉬운 물질.,1,0,2
|
||||||
|
20,우이독경과 배움의 자세,7,3,c20_6,6,ACROSS,실패,일을 뜻대로 이루지 못하고 그르침.,2,2,2
|
||||||
|
20,우이독경과 배움의 자세,7,3,c20_7,7,DOWN,패배,싸움이나 경기에서 짐.,2,3,2
|
||||||
|
20,우이독경과 배움의 자세,7,3,c20_8,8,ACROSS,배구,네트를 사이에 두고 손으로 공을 쳐 넘기는 구기 경기.,3,3,2
|
||||||
|
20,우이독경과 배움의 자세,7,3,c20_9,9,ACROSS,문학,언어로 생각과 감정을 표현하는 예술.,4,0,2
|
||||||
|
20,우이독경과 배움의 자세,7,3,c20_10,10,DOWN,학교,학생들이 모여 배움을 익히는 곳.,4,1,2
|
||||||
|
20,우이독경과 배움의 자세,7,3,c20_11,11,ACROSS,교실,수업을 받는 학교의 방.,5,1,2
|
||||||
|
21,역지사지와 배려의 미덕,7,3,c21_1,1,ACROSS,역지사지,"처지를 바꾸어 생각한다는 뜻으로, 상대방의 입장에서 헤아림.",0,0,4
|
||||||
|
21,역지사지와 배려의 미덕,7,3,c21_2,2,DOWN,역사,인류 사회가 거쳐 온 과거의 사실이나 기록.,0,0,2
|
||||||
|
21,역지사지와 배려의 미덕,7,3,c21_3,3,DOWN,지혜,사물의 이치를 밝히고 바르게 판단하는 슬기.,0,3,2
|
||||||
|
21,역지사지와 배려의 미덕,7,3,c21_4,4,ACROSS,사진,카메라로 찍어 현상한 그림.,1,0,2
|
||||||
|
21,역지사지와 배려의 미덕,7,3,c21_5,5,ACROSS,혜성,태양 주위를 긴 꼬리를 달고 도는 별.,1,3,2
|
||||||
|
21,역지사지와 배려의 미덕,7,3,c21_6,6,ACROSS,일기예보,앞으로의 날씨 변화를 미리 알리는 방송이나 보도.,3,2,4
|
||||||
|
21,역지사지와 배려의 미덕,7,3,c21_7,7,DOWN,예술,아름다움을 표현하고 창조하는 모든 활동.,3,4,2
|
||||||
|
21,역지사지와 배려의 미덕,7,3,c21_8,8,ACROSS,술병,술을 담아 두는 병.,4,4,2
|
||||||
|
21,역지사지와 배려의 미덕,7,3,c21_9,9,DOWN,기차,철도 위를 달리는 열차.,4,6,2
|
||||||
|
21,역지사지와 배려의 미덕,7,3,c21_10,10,ACROSS,과일,나무나 풀에서 열리는 달콤한 열매.,3,0,2
|
||||||
|
22,견물생심과 마음가짐,7,3,c22_1,1,ACROSS,견물생심,좋은 물건을 보면 그것을 가지고 싶은 욕심이 생김.,0,1,4
|
||||||
|
22,견물생심과 마음가짐,7,3,c22_2,2,DOWN,견해,어떤 사물이나 현상에 대하여 가지는 생각이나 의견.,0,1,2
|
||||||
|
22,견물생심과 마음가짐,7,3,c22_3,3,DOWN,물건,일정한 형체를 지닌 모든 대상.,0,2,2
|
||||||
|
22,견물생심과 마음가짐,7,3,c22_4,4,DOWN,생일,세상에 태어난 날.,0,3,2
|
||||||
|
22,견물생심과 마음가짐,7,3,c22_5,5,DOWN,심리,마음의 상태나 작용.,0,4,2
|
||||||
|
22,견물생심과 마음가짐,7,3,c22_6,6,ACROSS,일기장,날마다 있었던 일을 적는 공책.,2,3,3
|
||||||
|
22,견물생심과 마음가짐,7,3,c22_7,7,DOWN,장소,어떤 일이 일어나는 자리나 위치.,2,5,2
|
||||||
|
22,견물생심과 마음가짐,7,3,c22_8,8,ACROSS,소망,바라고 소원함.,3,5,2
|
||||||
|
22,견물생심과 마음가짐,7,3,c22_9,9,DOWN,망원경,먼 곳의 물체를 확대하여 크게 보는 기구.,3,6,3
|
||||||
|
22,견물생심과 마음가짐,7,3,c22_10,10,ACROSS,안경,시력을 돕는 안경.,5,5,2
|
||||||
|
22,견물생심과 마음가짐,7,3,c22_11,11,DOWN,보안,안전을 유지하고 보호함.,4,5,2
|
||||||
|
23,금상첨화와 기쁨,7,3,c23_1,1,ACROSS,금상첨화,"비단 위에 꽃을 더한다는 뜻으로, 좋은 일 위에 더 좋은 일이 겹침.",0,1,4
|
||||||
|
23,금상첨화와 기쁨,7,3,c23_2,2,DOWN,금메달,경기에서 1위를 한 사람에게 주는 금빛 메달.,0,1,3
|
||||||
|
23,금상첨화와 기쁨,7,3,c23_3,3,DOWN,상품,사고파는 물품.,0,2,2
|
||||||
|
23,금상첨화와 기쁨,7,3,c23_4,4,DOWN,화분,식물을 심어 기르는 그릇.,0,4,2
|
||||||
|
23,금상첨화와 기쁨,7,3,c23_5,5,ACROSS,품질,물건의 성질과 바탕.,1,2,2
|
||||||
|
23,금상첨화와 기쁨,7,3,c23_6,6,ACROSS,분수,"물을 높이 뿜어 올리는 장치, 또는 자기 분량.",1,4,2
|
||||||
|
23,금상첨화와 기쁨,7,3,c23_7,7,ACROSS,달리기,빠른 속도로 달려가는 운동 경기.,2,1,3
|
||||||
|
23,금상첨화와 기쁨,7,3,c23_8,8,DOWN,기차,철로 위를 달리는 열차.,2,3,2
|
||||||
|
23,금상첨화와 기쁨,7,3,c23_9,9,ACROSS,차량,모든 종류의 자동차와 기차 등.,3,3,2
|
||||||
|
23,금상첨화와 기쁨,7,3,c23_10,10,ACROSS,도시,"정치, 경제, 문화의 중심이 되는 큰 취락.",4,2,2
|
||||||
|
23,금상첨화와 기쁨,7,3,c23_11,11,DOWN,시장,물건을 사고파는 장소.,4,3,2
|
||||||
|
24,설상가상과 위기 극복,7,3,c24_1,1,ACROSS,설상가상,"눈 위에 또 서리가 덮인다는 뜻으로, 난처한 일이나 불행이 잇따라 일어남.",0,0,4
|
||||||
|
24,설상가상과 위기 극복,7,3,c24_2,2,DOWN,설경,눈이 쌓인 아름다운 경치.,0,0,2
|
||||||
|
24,설상가상과 위기 극복,7,3,c24_3,3,DOWN,상장,우수한 공로나 성적을 칭찬하여 주는 증서.,0,1,2
|
||||||
|
24,설상가상과 위기 극복,7,3,c24_4,4,DOWN,가족,"부모, 자식 등 혈연이나 입양으로 이루어진 공동체.",0,2,2
|
||||||
|
24,설상가상과 위기 극복,7,3,c24_5,5,DOWN,상처,몸을 다쳐서 부상당한 자리나 마음의 괴로움.,0,3,2
|
||||||
|
24,설상가상과 위기 극복,7,3,c24_6,6,ACROSS,처방전,의사가 환자에게 먹을 약을 적어 주는 문서.,1,3,3
|
||||||
|
24,설상가상과 위기 극복,7,3,c24_7,7,DOWN,전화기,소리를 전기 신호로 바꾸어 멀리 전달하는 기계.,1,5,3
|
||||||
|
24,설상가상과 위기 극복,7,3,c24_8,8,ACROSS,기분,마음속에 일어나는 기운이나 감정.,3,5,2
|
||||||
|
24,설상가상과 위기 극복,7,3,c24_9,9,DOWN,분수대,물을 뿜어 올리도록 만든 설비나 장소.,3,6,3
|
||||||
|
24,설상가상과 위기 극복,7,3,c24_10,10,ACROSS,무대,"노래나 춤, 연극을 공연하는 높은 자리.",5,5,2
|
||||||
|
24,설상가상과 위기 극복,7,3,c24_11,11,ACROSS,경찰,치안과 질서를 지키는 사람이나 기관.,3,0,2
|
||||||
|
25,호사다마와 지혜로운 처세,7,3,c25_1,1,ACROSS,호사다마,좋은 일에는 방해가 되는 일이 많음.,0,1,4
|
||||||
|
25,호사다마와 지혜로운 처세,7,3,c25_2,2,DOWN,호수,땅이 우묵하게 파여 물이 고인 큰 못.,0,1,2
|
||||||
|
25,호사다마와 지혜로운 처세,7,3,c25_3,3,DOWN,사자,백수의 왕으로 불리는 맹수.,0,2,2
|
||||||
|
25,호사다마와 지혜로운 처세,7,3,c25_4,4,DOWN,다방,차나 음료를 파는 가게.,0,3,2
|
||||||
|
25,호사다마와 지혜로운 처세,7,3,c25_5,5,DOWN,마술,재빠른 손놀림이나 도구로 눈속임을 보이는 기술.,0,4,2
|
||||||
|
25,호사다마와 지혜로운 처세,7,3,c25_6,6,DOWN,술래,숨바꼭질에서 숨은 사람을 찾는 사람.,1,4,2
|
||||||
|
25,호사다마와 지혜로운 처세,7,3,c25_7,7,ACROSS,지구,우리가 살고 있는 태양계의 행성.,3,4,2
|
||||||
|
25,호사다마와 지혜로운 처세,7,3,c25_8,8,DOWN,구름,공중에 떠 있는 수증기 덩어리.,3,5,2
|
||||||
|
25,호사다마와 지혜로운 처세,7,3,c25_9,9,ACROSS,달리기,발을 빨리 놀려 뛰는 운동.,5,2,3
|
||||||
|
25,호사다마와 지혜로운 처세,7,3,c25_10,10,DOWN,기차,철로 위를 달리는 열차.,5,4,2
|
||||||
|
25,호사다마와 지혜로운 처세,7,3,c25_11,11,ACROSS,수영,물속을 헤엄치는 운동.,6,0,2
|
||||||
|
26,전화위복과 희망,7,3,c26_1,1,ACROSS,전화위복,재앙이 바뀌어 도리어 복이 됨.,0,0,4
|
||||||
|
26,전화위복과 희망,7,3,c26_2,2,DOWN,전쟁,국가나 집단 간에 무력을 써서 싸움.,0,0,2
|
||||||
|
26,전화위복과 희망,7,3,c26_3,3,DOWN,화분,꽃이나 식물을 심는 그릇.,0,1,2
|
||||||
|
26,전화위복과 희망,7,3,c26_4,4,DOWN,위험,해를 입거나 다칠 염려가 있는 상태.,0,2,2
|
||||||
|
26,전화위복과 희망,7,3,c26_5,5,DOWN,복조리,설날 복을 쌀 때 담으려고 벽에 걸어 두는 조리.,0,3,3
|
||||||
|
26,전화위복과 희망,7,3,c26_6,6,DOWN,분수,물을 공중으로 내뿜는 장치.,1,1,2
|
||||||
|
26,전화위복과 희망,7,3,c26_7,7,ACROSS,리모컨,가전제품을 멀리서 원격 조종하는 장치.,2,3,3
|
||||||
|
26,전화위복과 희망,7,3,c26_8,8,DOWN,컨디션,몸과 마음의 건강 상태나 조절 상태.,2,5,3
|
||||||
|
26,전화위복과 희망,7,3,c26_9,9,ACROSS,패션쇼,새로운 옷의 유행을 보여주는 발표회.,4,4,3
|
||||||
|
26,전화위복과 희망,7,3,c26_10,10,DOWN,쇼핑,물건을 사러 다니는 일.,4,6,2
|
||||||
|
26,전화위복과 희망,7,3,c26_11,11,ACROSS,사진,카메라로 찍은 영상물.,5,1,2
|
||||||
|
27,주경야독과 근면한 삶,7,3,c27_1,1,ACROSS,주경야독,"낮에는 밭을 갈고 밤에는 글을 읽는다는 뜻으로, 바쁜 틈을 타서 열심히 공부함.",0,0,4
|
||||||
|
27,주경야독과 근면한 삶,7,3,c27_2,2,DOWN,주민,일정한 지역에 살고 있는 사람들.,0,0,2
|
||||||
|
27,주경야독과 근면한 삶,7,3,c27_3,3,DOWN,경찰,사회의 질서와 안전을 유지하는 치안 조직.,0,1,2
|
||||||
|
27,주경야독과 근면한 삶,7,3,c27_4,4,DOWN,야구,배트로 공을 치고 베이스를 돌아 득점하는 구기 경기.,0,2,2
|
||||||
|
27,주경야독과 근면한 삶,7,3,c27_5,5,DOWN,독서,책을 읽음.,0,3,2
|
||||||
|
27,주경야독과 근면한 삶,7,3,c27_6,6,DOWN,의사,의술을 베풀어 환자의 병을 고치는 전문 직업인.,1,4,2
|
||||||
|
27,주경야독과 근면한 삶,7,3,c27_7,7,ACROSS,사랑,아끼고 귀중히 여기는 따뜻한 마음.,2,4,2
|
||||||
|
27,주경야독과 근면한 삶,7,3,c27_8,8,DOWN,랑데부,우주선이나 사람들이 특정한 시간에 만남을 약속함.,2,5,3
|
||||||
|
27,주경야독과 근면한 삶,7,3,c27_9,9,ACROSS,부모,아버지와 어머니를 아울러 이르는 말.,4,5,2
|
||||||
|
27,주경야독과 근면한 삶,7,3,c27_10,10,DOWN,모습,사람의 겉모양이나 사물의 자태.,4,6,2
|
||||||
|
27,주경야독과 근면한 삶,7,3,c27_11,11,ACROSS,민주주의,국민이 권력을 가지고 스스로 다스리는 정치 체제.,5,0,4
|
||||||
|
28,학수고대와 대기만성,7,3,c28_1,1,ACROSS,학수고대,학의 목처럼 목을 길게 빼고 간절히 기다림.,0,0,4
|
||||||
|
28,학수고대와 대기만성,7,3,c28_2,2,DOWN,학교,학생들이 모여 배움을 익히는 곳.,0,0,2
|
||||||
|
28,학수고대와 대기만성,7,3,c28_3,3,DOWN,수영,물속을 헤엄침.,0,1,2
|
||||||
|
28,학수고대와 대기만성,7,3,c28_4,4,DOWN,고향,자기가 태어나서 자란 정든 고장.,0,2,2
|
||||||
|
28,학수고대와 대기만성,7,3,c28_5,5,DOWN,대기만성,"큰 그릇은 늦게 이루어지듯, 크게 될 인물은 오랜 노력을 거쳐 늦게 빛을 봄.",0,3,4
|
||||||
|
28,학수고대와 대기만성,7,3,c28_6,6,ACROSS,성심성의,참된 정성과 참된 뜻을 다함.,3,3,4
|
||||||
|
28,학수고대와 대기만성,7,3,c28_7,7,DOWN,심리,마음의 작용이나 의식 상태.,3,4,2
|
||||||
|
28,학수고대와 대기만성,7,3,c28_8,8,DOWN,의사,병을 치료하는 의사.,3,6,2
|
||||||
|
28,학수고대와 대기만성,7,3,c28_9,9,ACROSS,리본,장식용 띠나 매듭.,4,4,2
|
||||||
|
28,학수고대와 대기만성,7,3,c28_10,10,DOWN,본부,조직의 중심이 되는 기관.,4,5,2
|
||||||
|
28,학수고대와 대기만성,7,3,c28_11,11,ACROSS,부모,아버지와 어머니.,5,5,2
|
||||||
|
28,학수고대와 대기만성,7,3,c28_12,12,ACROSS,사진,카메라로 찍은 사진.,5,0,2
|
||||||
|
29,청출어람과 어부지리,7,3,c29_1,1,ACROSS,청출어람,"쪽풀에서 나온 푸른빛이 쪽풀보다 더 푸르다는 뜻으로, 제자가 스승보다 나음.",0,0,4
|
||||||
|
29,청출어람과 어부지리,7,3,c29_2,2,DOWN,청소,더러운 것을 쓸고 닦아 깨끗하게 함.,0,0,2
|
||||||
|
29,청출어람과 어부지리,7,3,c29_3,3,DOWN,출발,목적지를 향하여 길을 떠남.,0,1,2
|
||||||
|
29,청출어람과 어부지리,7,3,c29_4,4,DOWN,어부지리,둘이 다투는 사이에 제삼자가 힘들이지 않고 이익을 챙김.,0,2,4
|
||||||
|
29,청출어람과 어부지리,7,3,c29_5,5,DOWN,람보,강인한 전사의 대명사로 불리는 영화 속 주인공.,0,3,2
|
||||||
|
29,청출어람과 어부지리,7,3,c29_6,6,ACROSS,리모컨,기계를 멀리서 원격 제어하는 무선 조종기.,3,2,3
|
||||||
|
29,청출어람과 어부지리,7,3,c29_7,7,DOWN,컨트리,시골 풍경이나 미국 남부의 민속 음악 장르.,3,4,3
|
||||||
|
29,청출어람과 어부지리,7,3,c29_8,8,ACROSS,리듬,음악에서 일정한 규칙에 따라 반복되는 흐름.,5,4,2
|
||||||
|
29,청출어람과 어부지리,7,3,c29_9,9,DOWN,듬직,생김새나 됨됨이가 믿음직스러움.,5,5,2
|
||||||
|
29,청출어람과 어부지리,7,3,c29_10,10,ACROSS,인사,마주 보며 안부를 묻거나 예를 표하는 일.,4,5,2
|
||||||
|
29,청출어람과 어부지리,7,3,c29_11,11,ACROSS,봄날,따뜻하고 화창한 봄의 날씨.,6,0,2
|
||||||
|
30,화룡점정과 정정당당,7,3,c30_1,1,ACROSS,화룡점정,"용을 그리고 마지막에 눈동자를 찍어 완성한다는 뜻으로, 가장 핵심적인 부분을 마무리함.",0,0,4
|
||||||
|
30,화룡점정과 정정당당,7,3,c30_2,2,DOWN,화분,꽃이나 식물을 심는 그릇.,0,0,2
|
||||||
|
30,화룡점정과 정정당당,7,3,c30_3,3,DOWN,룡왕,바다나 물속을 다스린다는 전설의 용왕.,0,1,2
|
||||||
|
30,화룡점정과 정정당당,7,3,c30_4,4,DOWN,점심,낮에 끼니로 먹는 음식.,0,2,2
|
||||||
|
30,화룡점정과 정정당당,7,3,c30_5,5,DOWN,정정당당,태도나 처사가 올바르고 떳떳함.,0,3,4
|
||||||
|
30,화룡점정과 정정당당,7,3,c30_6,6,ACROSS,당랑거철,"사마귀가 수레바퀴를 막아선다는 뜻으로, 제 분수도 모르고 강적에게 덤빔.",3,3,4
|
||||||
|
30,화룡점정과 정정당당,7,3,c30_7,7,DOWN,철도,기차가 안전하게 달릴 수 있도록 깐 레일 길.,3,6,2
|
||||||
|
30,화룡점정과 정정당당,7,3,c30_8,8,ACROSS,지도,지표면의 모습을 축소하여 평면에 나타낸 그림.,4,5,2
|
||||||
|
30,화룡점정과 정정당당,7,3,c30_9,9,DOWN,지구,인류가 살고 있는 행성.,4,5,2
|
||||||
|
30,화룡점정과 정정당당,7,3,c30_10,10,ACROSS,구름,하늘에 하얗게 떠 있는 수증기.,5,5,2
|
||||||
|
30,화룡점정과 정정당당,7,3,c30_11,11,DOWN,름바,정열적인 쿠바의 전통 라틴 댄스.,5,6,2
|
||||||
|
30,화룡점정과 정정당당,7,3,c30_12,12,ACROSS,삼바,브라질의 대표적인 열정적인 전통 춤과 음악.,6,5,2
|
||||||
|
@@ -0,0 +1,142 @@
|
|||||||
|
[
|
||||||
|
[
|
||||||
|
"순위",
|
||||||
|
"단어",
|
||||||
|
"품사",
|
||||||
|
"풀이",
|
||||||
|
"등급"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1195.0",
|
||||||
|
"가게",
|
||||||
|
"명",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"898.0",
|
||||||
|
"가격03",
|
||||||
|
"명",
|
||||||
|
"價格",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"2986.0",
|
||||||
|
"가구03",
|
||||||
|
"명",
|
||||||
|
"家口",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"7434.0",
|
||||||
|
"가구04",
|
||||||
|
"명",
|
||||||
|
"家具",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"4964.0",
|
||||||
|
"가까워지다",
|
||||||
|
"동",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1695.0",
|
||||||
|
"가까이",
|
||||||
|
"부",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"3560.0",
|
||||||
|
"가까이",
|
||||||
|
"명",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"648.0",
|
||||||
|
"가깝다",
|
||||||
|
"형",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1747.0",
|
||||||
|
"가꾸다",
|
||||||
|
"동",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"852.0",
|
||||||
|
"가끔",
|
||||||
|
"부",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"5071.0",
|
||||||
|
"가난01",
|
||||||
|
"명",
|
||||||
|
"",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1716.0",
|
||||||
|
"가난하다",
|
||||||
|
"형",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"2757.0",
|
||||||
|
"가늘다",
|
||||||
|
"형",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"6942.0",
|
||||||
|
"가능",
|
||||||
|
"명",
|
||||||
|
"可能",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"483.0",
|
||||||
|
"가능성",
|
||||||
|
"명",
|
||||||
|
"可能性",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"501.0",
|
||||||
|
"가능하다",
|
||||||
|
"형",
|
||||||
|
"可能-",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"6003.0",
|
||||||
|
"가능해지다",
|
||||||
|
"동",
|
||||||
|
"可能-",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"25.0",
|
||||||
|
"가다01",
|
||||||
|
"동",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"150.0",
|
||||||
|
"가다01",
|
||||||
|
"보",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
]
|
||||||
|
]
|
||||||
@@ -0,0 +1,142 @@
|
|||||||
|
[
|
||||||
|
[
|
||||||
|
"순위",
|
||||||
|
"단어",
|
||||||
|
"품사",
|
||||||
|
"풀이",
|
||||||
|
"등급"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1195.0",
|
||||||
|
"가게",
|
||||||
|
"명",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"898.0",
|
||||||
|
"가격03",
|
||||||
|
"명",
|
||||||
|
"價格",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"2986.0",
|
||||||
|
"가구03",
|
||||||
|
"명",
|
||||||
|
"家口",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"7434.0",
|
||||||
|
"가구04",
|
||||||
|
"명",
|
||||||
|
"家具",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"4964.0",
|
||||||
|
"가까워지다",
|
||||||
|
"동",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1695.0",
|
||||||
|
"가까이",
|
||||||
|
"부",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"3560.0",
|
||||||
|
"가까이",
|
||||||
|
"명",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"648.0",
|
||||||
|
"가깝다",
|
||||||
|
"형",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1747.0",
|
||||||
|
"가꾸다",
|
||||||
|
"동",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"852.0",
|
||||||
|
"가끔",
|
||||||
|
"부",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"5071.0",
|
||||||
|
"가난01",
|
||||||
|
"명",
|
||||||
|
"",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1716.0",
|
||||||
|
"가난하다",
|
||||||
|
"형",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"2757.0",
|
||||||
|
"가늘다",
|
||||||
|
"형",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"6942.0",
|
||||||
|
"가능",
|
||||||
|
"명",
|
||||||
|
"可能",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"483.0",
|
||||||
|
"가능성",
|
||||||
|
"명",
|
||||||
|
"可能性",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"501.0",
|
||||||
|
"가능하다",
|
||||||
|
"형",
|
||||||
|
"可能-",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"6003.0",
|
||||||
|
"가능해지다",
|
||||||
|
"동",
|
||||||
|
"可能-",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"25.0",
|
||||||
|
"가다01",
|
||||||
|
"동",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"150.0",
|
||||||
|
"가다01",
|
||||||
|
"보",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
]
|
||||||
|
]
|
||||||
@@ -0,0 +1,142 @@
|
|||||||
|
[
|
||||||
|
[
|
||||||
|
"순위",
|
||||||
|
"단어",
|
||||||
|
"품사",
|
||||||
|
"풀이",
|
||||||
|
"등급"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1195.0",
|
||||||
|
"가게",
|
||||||
|
"명",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"898.0",
|
||||||
|
"가격03",
|
||||||
|
"명",
|
||||||
|
"價格",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"2986.0",
|
||||||
|
"가구03",
|
||||||
|
"명",
|
||||||
|
"家口",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"7434.0",
|
||||||
|
"가구04",
|
||||||
|
"명",
|
||||||
|
"家具",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"4964.0",
|
||||||
|
"가까워지다",
|
||||||
|
"동",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1695.0",
|
||||||
|
"가까이",
|
||||||
|
"부",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"3560.0",
|
||||||
|
"가까이",
|
||||||
|
"명",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"648.0",
|
||||||
|
"가깝다",
|
||||||
|
"형",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1747.0",
|
||||||
|
"가꾸다",
|
||||||
|
"동",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"852.0",
|
||||||
|
"가끔",
|
||||||
|
"부",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"5071.0",
|
||||||
|
"가난01",
|
||||||
|
"명",
|
||||||
|
"",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1716.0",
|
||||||
|
"가난하다",
|
||||||
|
"형",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"2757.0",
|
||||||
|
"가늘다",
|
||||||
|
"형",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"6942.0",
|
||||||
|
"가능",
|
||||||
|
"명",
|
||||||
|
"可能",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"483.0",
|
||||||
|
"가능성",
|
||||||
|
"명",
|
||||||
|
"可能性",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"501.0",
|
||||||
|
"가능하다",
|
||||||
|
"형",
|
||||||
|
"可能-",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"6003.0",
|
||||||
|
"가능해지다",
|
||||||
|
"동",
|
||||||
|
"可能-",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"25.0",
|
||||||
|
"가다01",
|
||||||
|
"동",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"150.0",
|
||||||
|
"가다01",
|
||||||
|
"보",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
]
|
||||||
|
]
|
||||||
@@ -0,0 +1,142 @@
|
|||||||
|
[
|
||||||
|
[
|
||||||
|
"순위",
|
||||||
|
"단어",
|
||||||
|
"품사",
|
||||||
|
"풀이",
|
||||||
|
"등급"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1195.0",
|
||||||
|
"가게",
|
||||||
|
"명",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"898.0",
|
||||||
|
"가격03",
|
||||||
|
"명",
|
||||||
|
"價格",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"2986.0",
|
||||||
|
"가구03",
|
||||||
|
"명",
|
||||||
|
"家口",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"7434.0",
|
||||||
|
"가구04",
|
||||||
|
"명",
|
||||||
|
"家具",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"4964.0",
|
||||||
|
"가까워지다",
|
||||||
|
"동",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1695.0",
|
||||||
|
"가까이",
|
||||||
|
"부",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"3560.0",
|
||||||
|
"가까이",
|
||||||
|
"명",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"648.0",
|
||||||
|
"가깝다",
|
||||||
|
"형",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1747.0",
|
||||||
|
"가꾸다",
|
||||||
|
"동",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"852.0",
|
||||||
|
"가끔",
|
||||||
|
"부",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"5071.0",
|
||||||
|
"가난01",
|
||||||
|
"명",
|
||||||
|
"",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1716.0",
|
||||||
|
"가난하다",
|
||||||
|
"형",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"2757.0",
|
||||||
|
"가늘다",
|
||||||
|
"형",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"6942.0",
|
||||||
|
"가능",
|
||||||
|
"명",
|
||||||
|
"可能",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"483.0",
|
||||||
|
"가능성",
|
||||||
|
"명",
|
||||||
|
"可能性",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"501.0",
|
||||||
|
"가능하다",
|
||||||
|
"형",
|
||||||
|
"可能-",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"6003.0",
|
||||||
|
"가능해지다",
|
||||||
|
"동",
|
||||||
|
"可能-",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"25.0",
|
||||||
|
"가다01",
|
||||||
|
"동",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"150.0",
|
||||||
|
"가다01",
|
||||||
|
"보",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
]
|
||||||
|
]
|
||||||
@@ -0,0 +1,142 @@
|
|||||||
|
[
|
||||||
|
[
|
||||||
|
"순위",
|
||||||
|
"단어",
|
||||||
|
"품사",
|
||||||
|
"풀이",
|
||||||
|
"등급"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1195.0",
|
||||||
|
"가게",
|
||||||
|
"명",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"898.0",
|
||||||
|
"가격03",
|
||||||
|
"명",
|
||||||
|
"價格",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"2986.0",
|
||||||
|
"가구03",
|
||||||
|
"명",
|
||||||
|
"家口",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"7434.0",
|
||||||
|
"가구04",
|
||||||
|
"명",
|
||||||
|
"家具",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"4964.0",
|
||||||
|
"가까워지다",
|
||||||
|
"동",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1695.0",
|
||||||
|
"가까이",
|
||||||
|
"부",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"3560.0",
|
||||||
|
"가까이",
|
||||||
|
"명",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"648.0",
|
||||||
|
"가깝다",
|
||||||
|
"형",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1747.0",
|
||||||
|
"가꾸다",
|
||||||
|
"동",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"852.0",
|
||||||
|
"가끔",
|
||||||
|
"부",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"5071.0",
|
||||||
|
"가난01",
|
||||||
|
"명",
|
||||||
|
"",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"1716.0",
|
||||||
|
"가난하다",
|
||||||
|
"형",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"2757.0",
|
||||||
|
"가늘다",
|
||||||
|
"형",
|
||||||
|
"",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"6942.0",
|
||||||
|
"가능",
|
||||||
|
"명",
|
||||||
|
"可能",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"483.0",
|
||||||
|
"가능성",
|
||||||
|
"명",
|
||||||
|
"可能性",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"501.0",
|
||||||
|
"가능하다",
|
||||||
|
"형",
|
||||||
|
"可能-",
|
||||||
|
"B"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"6003.0",
|
||||||
|
"가능해지다",
|
||||||
|
"동",
|
||||||
|
"可能-",
|
||||||
|
"C"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"25.0",
|
||||||
|
"가다01",
|
||||||
|
"동",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"150.0",
|
||||||
|
"가다01",
|
||||||
|
"보",
|
||||||
|
"",
|
||||||
|
"A"
|
||||||
|
]
|
||||||
|
]
|
||||||
Binary file not shown.
Reference in New Issue
Block a user