✍️ 연플래닝 오리지널 — 「아하! 보이는 직관수학」 자체 제작. 모든 문제·정답 손검산 완료. 답안을 제출해야 해설·정답이 열립니다(먼저 스스로 풀어 보세요).
💬 더 필요한 게 있나요?
난이도 조절(더 쉽게 / 더 어렵게) · 다른 유형 · 특정 개념 집중 · 문항 수 등 무엇이든 적어 주세요. 선생님이 확인합니다. (공개 아님)
✏️ 손으로 풀어보세요
`; return s;
}
// ── 쌓기나무 (층별 개수) ──
function cubes(cfg){
const {layers=[], note='', W=250, H=210, label=''} = cfg; // layers=[아래층개수, 위층개수...]
const U=26, D=13, ox=60, oy=160;
let s=``; return s;
}
const P=[
{ tier:'기초', type:'self', kind:'num',
q:'쌓기나무를 그림처럼 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[3,2],note:'모두 몇 개일까요?'}),
answer:5,
hint:'층별로 세어서 더하세요! 1층 3개, 2층 2개.',
sol:{ ans:'5개', fig:cubes({layers:[3,2],label:'1층 3 + 2층 2 = 5개'}),
steps:['1층에 3개, 2층에 2개.','3 + 2 = 5개.','입체는 층별로 나눠서 세면 안 헷갈려요!']}},
{ tier:'기초', type:'self', kind:'num',
q:'쌓기나무를 그림처럼 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[4,3],note:'모두 몇 개일까요?'}),
answer:7,
hint:'층별로 세어서 더하세요! 1층 4개, 2층 3개.',
sol:{ ans:'7개', fig:cubes({layers:[4,3],label:'1층 4 + 2층 3 = 7개'}),
steps:['1층에 4개, 2층에 3개.','4 + 3 = 7개.','입체는 층별로 나눠서 세면 안 헷갈려요!']}},
{ tier:'기초', type:'self', kind:'num',
q:'쌓기나무를 그림처럼 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[2,1],note:'모두 몇 개일까요?'}),
answer:3,
hint:'층별로 세어서 더하세요! 1층 2개, 2층 1개.',
sol:{ ans:'3개', fig:cubes({layers:[2,1],label:'1층 2 + 2층 1 = 3개'}),
steps:['1층에 2개, 2층에 1개.','2 + 1 = 3개.','입체는 층별로 나눠서 세면 안 헷갈려요!']}},
{ tier:'기초', type:'self', kind:'num',
q:'쌓기나무를 그림처럼 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[5,3],note:'모두 몇 개일까요?'}),
answer:8,
hint:'층별로 세어서 더하세요! 1층 5개, 2층 3개.',
sol:{ ans:'8개', fig:cubes({layers:[5,3],label:'1층 5 + 2층 3 = 8개'}),
steps:['1층에 5개, 2층에 3개.','5 + 3 = 8개.','입체는 층별로 나눠서 세면 안 헷갈려요!']}},
{ tier:'기초', type:'self', kind:'num',
q:'쌓기나무를 그림처럼 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[3,3],note:'모두 몇 개일까요?'}),
answer:6,
hint:'층별로 세어서 더하세요! 1층 3개, 2층 3개.',
sol:{ ans:'6개', fig:cubes({layers:[3,3],label:'1층 3 + 2층 3 = 6개'}),
steps:['1층에 3개, 2층에 3개.','3 + 3 = 6개.','입체는 층별로 나눠서 세면 안 헷갈려요!']}},
{ tier:'기초', type:'self', kind:'num',
q:'쌓기나무를 그림처럼 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[4,2],note:'모두 몇 개일까요?'}),
answer:6,
hint:'층별로 세어서 더하세요! 1층 4개, 2층 2개.',
sol:{ ans:'6개', fig:cubes({layers:[4,2],label:'1층 4 + 2층 2 = 6개'}),
steps:['1층에 4개, 2층에 2개.','4 + 2 = 6개.','입체는 층별로 나눠서 세면 안 헷갈려요!']}},
{ tier:'기초', type:'self', kind:'num',
q:'쌓기나무를 그림처럼 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[2,2],note:'모두 몇 개일까요?'}),
answer:4,
hint:'층별로 세어서 더하세요! 1층 2개, 2층 2개.',
sol:{ ans:'4개', fig:cubes({layers:[2,2],label:'1층 2 + 2층 2 = 4개'}),
steps:['1층에 2개, 2층에 2개.','2 + 2 = 4개.','입체는 층별로 나눠서 세면 안 헷갈려요!']}},
{ tier:'기초', type:'self', kind:'num',
q:'쌓기나무를 그림처럼 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[5,4],note:'모두 몇 개일까요?'}),
answer:9,
hint:'층별로 세어서 더하세요! 1층 5개, 2층 4개.',
sol:{ ans:'9개', fig:cubes({layers:[5,4],label:'1층 5 + 2층 4 = 9개'}),
steps:['1층에 5개, 2층에 4개.','5 + 4 = 9개.','입체는 층별로 나눠서 세면 안 헷갈려요!']}},
{ tier:'기초', type:'self', kind:'num',
q:'쌓기나무를 그림처럼 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[3,1],note:'모두 몇 개일까요?'}),
answer:4,
hint:'층별로 세어서 더하세요! 1층 3개, 2층 1개.',
sol:{ ans:'4개', fig:cubes({layers:[3,1],label:'1층 3 + 2층 1 = 4개'}),
steps:['1층에 3개, 2층에 1개.','3 + 1 = 4개.','입체는 층별로 나눠서 세면 안 헷갈려요!']}},
{ tier:'기초', type:'self', kind:'num',
q:'쌓기나무를 그림처럼 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[4,4],note:'모두 몇 개일까요?'}),
answer:8,
hint:'층별로 세어서 더하세요! 1층 4개, 2층 4개.',
sol:{ ans:'8개', fig:cubes({layers:[4,4],label:'1층 4 + 2층 4 = 8개'}),
steps:['1층에 4개, 2층에 4개.','4 + 4 = 8개.','입체는 층별로 나눠서 세면 안 헷갈려요!']}},
{ tier:'중급', type:'self', kind:'num',
q:'쌓기나무를 1층 4개, 2층 3개, 3층 2개로 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[4,3,2],note:'모두 몇 개?'}),
answer:9,
hint:'층별 개수를 모두 더하세요!',
sol:{ ans:'9개', fig:null,
steps:['1층 4개 + 2층 3개 + 3층 2개.','4 + 3 + 2 = 9개.','층이 늘어도 방법은 똑같아요 — 층별로 세서 더하기!']}},
{ tier:'중급', type:'self', kind:'num',
q:'쌓기나무를 1층 5개, 2층 3개, 3층 1개로 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[5,3,1],note:'모두 몇 개?'}),
answer:9,
hint:'층별 개수를 모두 더하세요!',
sol:{ ans:'9개', fig:null,
steps:['1층 5개 + 2층 3개 + 3층 1개.','5 + 3 + 1 = 9개.','층이 늘어도 방법은 똑같아요 — 층별로 세서 더하기!']}},
{ tier:'중급', type:'self', kind:'num',
q:'쌓기나무를 1층 3개, 2층 2개, 3층 1개로 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[3,2,1],note:'모두 몇 개?'}),
answer:6,
hint:'층별 개수를 모두 더하세요!',
sol:{ ans:'6개', fig:null,
steps:['1층 3개 + 2층 2개 + 3층 1개.','3 + 2 + 1 = 6개.','층이 늘어도 방법은 똑같아요 — 층별로 세서 더하기!']}},
{ tier:'중급', type:'self', kind:'num',
q:'쌓기나무를 1층 4개, 2층 4개, 3층 2개로 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[4,4,2],note:'모두 몇 개?'}),
answer:10,
hint:'층별 개수를 모두 더하세요!',
sol:{ ans:'10개', fig:null,
steps:['1층 4개 + 2층 4개 + 3층 2개.','4 + 4 + 2 = 10개.','층이 늘어도 방법은 똑같아요 — 층별로 세서 더하기!']}},
{ tier:'중급', type:'self', kind:'num',
q:'쌓기나무를 1층 5개, 2층 4개, 3층 3개로 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[5,4,3],note:'모두 몇 개?'}),
answer:12,
hint:'층별 개수를 모두 더하세요!',
sol:{ ans:'12개', fig:null,
steps:['1층 5개 + 2층 4개 + 3층 3개.','5 + 4 + 3 = 12개.','층이 늘어도 방법은 똑같아요 — 층별로 세서 더하기!']}},
{ tier:'중급', type:'self', kind:'num',
q:'쌓기나무를 1층 3개, 2층 3개, 3층 3개로 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[3,3,3],note:'모두 몇 개?'}),
answer:9,
hint:'층별 개수를 모두 더하세요!',
sol:{ ans:'9개', fig:null,
steps:['1층 3개 + 2층 3개 + 3층 3개.','3 + 3 + 3 = 9개.','층이 늘어도 방법은 똑같아요 — 층별로 세서 더하기!']}},
{ tier:'중급', type:'self', kind:'num',
q:'쌓기나무를 1층 6개, 2층 4개, 3층 2개로 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[6,4,2],note:'모두 몇 개?'}),
answer:12,
hint:'층별 개수를 모두 더하세요!',
sol:{ ans:'12개', fig:null,
steps:['1층 6개 + 2층 4개 + 3층 2개.','6 + 4 + 2 = 12개.','층이 늘어도 방법은 똑같아요 — 층별로 세서 더하기!']}},
{ tier:'중급', type:'self', kind:'num',
q:'쌓기나무를 1층 4개, 2층 2개, 3층 1개로 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[4,2,1],note:'모두 몇 개?'}),
answer:7,
hint:'층별 개수를 모두 더하세요!',
sol:{ ans:'7개', fig:null,
steps:['1층 4개 + 2층 2개 + 3층 1개.','4 + 2 + 1 = 7개.','층이 늘어도 방법은 똑같아요 — 층별로 세서 더하기!']}},
{ tier:'중급', type:'self', kind:'num',
q:'쌓기나무를 1층 5개, 2층 5개, 3층 2개로 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[5,5,2],note:'모두 몇 개?'}),
answer:12,
hint:'층별 개수를 모두 더하세요!',
sol:{ ans:'12개', fig:null,
steps:['1층 5개 + 2층 5개 + 3층 2개.','5 + 5 + 2 = 12개.','층이 늘어도 방법은 똑같아요 — 층별로 세서 더하기!']}},
{ tier:'중급', type:'self', kind:'num',
q:'쌓기나무를 1층 6개, 2층 3개, 3층 1개로 쌓았습니다. 모두 몇 개일까요?',
fig:cubes({layers:[6,3,1],note:'모두 몇 개?'}),
answer:10,
hint:'층별 개수를 모두 더하세요!',
sol:{ ans:'10개', fig:null,
steps:['1층 6개 + 2층 3개 + 3층 1개.','6 + 3 + 1 = 10개.','층이 늘어도 방법은 똑같아요 — 층별로 세서 더하기!']}},
{ tier:'상위', type:'self', kind:'num',
q:'가로 3, 세로 2, 높이 2 로 빈틈없이 쌓으면 쌓기나무는 몇 개일까요?',
fig:null,
answer:12,
hint:'1층에 3 × 2 = 6개. 2층까지면?',
sol:{ ans:'12', fig:null,
steps:['1층에 가로 3 × 세로 2 = 6개.','2층까지 쌓으면 6 × 2 = 12개.','빈틈없이 쌓으면 가로 × 세로 × 높이 — 직육면체 부피 공식과 똑같아요!']}},
{ tier:'상위', type:'self', kind:'num',
q:'가로 4, 세로 3, 높이 2 로 빈틈없이 쌓으면 몇 개일까요?',
fig:null,
answer:24,
hint:'4 × 3 × 2 = ?',
sol:{ ans:'24', fig:null,
steps:['1층 = 4 × 3 = 12개.','2층까지 = 12 × 2 = 24개.','= 4 × 3 × 2 — 부피 공식 그대로!']}},
{ tier:'상위', type:'self', kind:'num',
q:'한 모서리에 3개씩 정육면체로 쌓으면 몇 개일까요?',
fig:null,
answer:27,
hint:'3 × 3 × 3 = ?',
sol:{ ans:'27', fig:null,
steps:['가로 3 × 세로 3 × 높이 3.','3 × 3 × 3 = 27개.','루빅스 큐브가 바로 이거예요!']}},
{ tier:'상위', type:'self', kind:'num',
q:'3 × 3 × 3 으로 쌓은 정육면체에서 겉에 보이는 쌓기나무는 몇 개일까요?',
fig:null,
answer:26,
hint:'전체 27개 중 속에 완전히 숨은 것은 몇 개일까요?',
sol:{ ans:'26', fig:null,
steps:['전체 = 27개.','한가운데 1개만 사방이 막혀 안 보여요.','27 − 1 = 26개. 겉에서 보이는 건 26개!']}},
{ tier:'상위', type:'self', kind:'num',
q:'3 × 3 × 3 정육면체 겉면 전체에 물감을 칠하면 한 면도 안 칠해진 나무는 몇 개?',
fig:null,
answer:1,
hint:'속에 완전히 숨은 것만 안 칠해져요!',
sol:{ ans:'1', fig:null,
steps:['겉면에 닿은 것은 다 칠해져요.','사방이 막혀 겉에 안 닿는 건 한가운데 1개뿐.','그래서 1개! (3 × 3 × 3 에서 속은 1 × 1 × 1 = 1개)']}},
{ tier:'상위', type:'self', kind:'num',
q:'3 × 3 × 3 정육면체 겉면을 칠하면 세 면이 칠해지는 나무는 몇 개?',
fig:null,
answer:8,
hint:'세 면이 만나는 곳은 모퉁이예요!',
sol:{ ans:'8', fig:null,
steps:['세 면이 동시에 겉에 닿는 곳 = 꼭짓점(모퉁이).','정육면체의 꼭짓점은 8개.','그래서 8개! 모퉁이 나무는 세 면이 칠해져요.']}},
{ tier:'상위', type:'self', kind:'num',
q:'4 × 4 × 4 로 쌓으면 쌓기나무는 몇 개일까요?',
fig:null,
answer:64,
hint:'4 × 4 × 4 = ?',
sol:{ ans:'64', fig:null,
steps:['4 × 4 × 4 = 64개.','한 모서리가 4개면 64개!','3×3×3(27개)보다 훨씬 많죠?']}},
{ tier:'상위', type:'self', kind:'num',
q:'4 × 4 × 4 에서 속에 완전히 숨은 나무는 몇 개일까요?',
fig:null,
answer:8,
hint:'겉 한 겹을 벗기면 안쪽은 몇 × 몇 × 몇이 될까요?',
sol:{ ans:'8', fig:null,
steps:['겉 한 겹을 벗기면 각 방향으로 2씩 줄어요.','속 = (4−2) × (4−2) × (4−2) = 2 × 2 × 2.','= 8개! 규칙: 속 = (n−2)³']}},
{ tier:'상위', type:'self', kind:'num',
q:'위에서 본 모양이 3 × 3 이고 각 자리에 1개씩만 있으면 쌓기나무는 몇 개?',
fig:null,
answer:9,
hint:'각 자리에 1층씩만!',
sol:{ ans:'9', fig:null,
steps:['위에서 본 모양 = 3 × 3 = 9자리.','각 자리에 1개씩 → 9개.','위에서 본 모양만으로는 높이를 알 수 없어요 — 그래서 각 자리 개수를 따로 알려줘야 해요!']}},
{ tier:'상위', type:'self', kind:'choice',
q:'위에서 본 모양만 보고 쌓기나무 개수를 정확히 알 수 있을까요?',
fig:null,
choices:['있다','없다','3 × 3 일 때만','알 수 없다'], answer:'없다',
hint:'같은 자리에 1개가 쌓였는지 5개가 쌓였는지 위에서 보면 보이나요?',
sol:{ ans:'없다', fig:null,
steps:['위에서 보면 어느 자리에 나무가 있는지만 보여요.','그 자리에 몇 층 쌓였는지는 안 보여요.','그래서 위·앞·옆 세 방향에서 봐야 모양을 알 수 있어요! (또는 자리별 층수를 적어야 해요)']}},
{ tier:'최상위', type:'self', kind:'num',
q:'쌓기나무로 만든 모양을 정확히 나타내려면 몇 방향에서 봐야 할까요?',
fig:null,
answer:3,
hint:'위에서만 보면 높이를 몰라요. 앞에서만 보면 깊이를 모르고요.',
sol:{ ans:'3', fig:null,
steps:['위에서 보면 어느 자리에 있는지, 앞에서 보면 높이, 옆에서 보면 깊이가 보여요.','한 방향만으로는 항상 부족해요.','위·앞·옆 3방향! 그래서 설계도도 세 방향으로 그려요.']}},
{ tier:'최상위', type:'self', kind:'choice',
q:'같은 위에서 본 모양이어도 실제 모양이 여러 가지일 수 있을까요?',
fig:null,
choices:['있다','없다','가끔','알 수 없다'], answer:'있다',
hint:'3×3 자리에 1개씩 쌓아도, 5개씩 쌓아도 위에서는 똑같아 보여요!',
sol:{ ans:'있다', fig:null,
steps:['위에서 본 모양 = 어느 자리에 있는지만 알려줘요.','각 자리에 1층이든 5층이든 위에서는 똑같아 보여요.','그래서 실제 모양은 여러 가지! 정보가 부족하면 답이 하나가 아니에요.']}},
{ tier:'최상위', type:'self', kind:'num',
q:'2 × 2 × 2 정육면체 겉면을 칠하면 세 면이 칠해지는 나무는 몇 개?',
fig:null,
answer:8,
hint:'2 × 2 × 2 = 8개인데, 모두 모퉁이예요!',
sol:{ ans:'8', fig:null,
steps:['2 × 2 × 2 = 전체 8개.','각 나무가 모두 모퉁이에 있어요 (속이 없어요).','그래서 8개 전부! 2×2×2는 속이 아예 없는 특별한 경우예요.']}},
{ tier:'최상위', type:'self', kind:'num',
q:'4 × 4 × 4 에서 정확히 두 면만 칠해지는 나무는 몇 개?',
fig:null,
answer:24,
hint:'두 면이 만나는 곳 = 모서리. 모서리 하나에 모퉁이를 뺀 게 몇 개?',
sol:{ ans:'24', fig:null,
steps:['두 면이 칠해지는 곳 = 모서리(꼭짓점 제외).','모서리 하나에 4 − 2 = 2개씩. 모서리는 12개.','2 × 12 = 24개!']}},
{ tier:'최상위', type:'self', kind:'num',
q:'4 × 4 × 4 에서 정확히 한 면만 칠해지는 나무는 몇 개?',
fig:null,
answer:24,
hint:'면의 한가운데! 한 면에 (4−2) × (4−2)개.',
sol:{ ans:'24', fig:null,
steps:['한 면만 칠해지는 곳 = 면의 한가운데.','한 면에 (4−2) × (4−2) = 2 × 2 = 4개. 면은 6개.','4 × 6 = 24개!']}},
{ tier:'최상위', type:'self', kind:'num',
q:'4 × 4 × 4 에서 세 면(8) + 두 면(24) + 한 면(24) + 안 칠해짐(8) = ?',
fig:null,
answer:64,
hint:'전부 더하면 전체가 나와야 해요!',
sol:{ ans:'64', fig:null,
steps:['8 + 24 + 24 + 8 = 64.','4 × 4 × 4 = 64 ✓ 딱 맞아요!','이렇게 합이 전체와 맞는지 확인하면 실수를 잡을 수 있어요 — 아주 좋은 습관이에요!']}},
{ tier:'최상위', type:'self', kind:'choice',
q:'쌓기나무 개수는 그대로인데 겉넓이는 달라질 수 있을까요?',
fig:null,
choices:['있다','없다','가끔','알 수 없다'], answer:'있다',
hint:'8개를 1줄로 늘어놓는 것과 2×2×2로 뭉치는 것 — 겉이 같을까요?',
sol:{ ans:'있다', fig:null,
steps:['8개를 1 × 1 × 8 로 늘어놓으면 겉넓이 34칸.','2 × 2 × 2 로 뭉치면 겉넓이 24칸.','개수(부피)는 같아도 겉넓이는 달라요! 뭉칠수록 겉이 작아져요.']}},
{ tier:'최상위', type:'self', kind:'choice',
q:'쌓기나무를 붙일 때마다 겉넓이는 어떻게 될까요?',
fig:null,
choices:['붙는 면만큼 줄어든다','그대로다','늘어난다','알 수 없다'], answer:'붙는 면만큼 줄어든다',
hint:'두 나무를 딱 붙이면 맞닿은 면은 어떻게 되나요?',
sol:{ ans:'붙는 면만큼 줄어든다', fig:null,
steps:['나무 하나의 겉넓이 = 6칸.','둘을 붙이면 맞닿은 2칸이 안 보이게 돼요.','6 + 6 = 12 가 아니라 10칸! 붙는 면만큼 겉넓이가 줄어요.']}},
{ tier:'최상위', type:'self', kind:'choice',
q:'같은 개수의 쌓기나무로 겉넓이를 가장 작게 하려면 어떻게 쌓을까요?',
fig:null,
choices:['정육면체에 가깝게','길게 한 줄로','납작하게','알 수 없다'], answer:'정육면체에 가깝게',
hint:'길게 늘어놓는 것과 뭉치는 것 — 어느 쪽이 겉이 작았나요?',
sol:{ ans:'정육면체에 가깝게', fig:null,
steps:['길게 늘어놓으면 겉이 많이 드러나요.','뭉칠수록 맞닿는 면이 늘어 겉이 줄어요.','정육면체에 가깝게 쌓을 때 겉넓이가 가장 작아요! (동물이 추울 때 웅크리는 것과 같은 원리)']}},
{ tier:'최상위', type:'self', kind:'choice',
q:'입체를 여러 방향에서 보는 것이 실생활에서 쓰이는 예는?',
fig:null,
choices:['건물 설계도','요리','노래','알 수 없다'], answer:'건물 설계도',
hint:'집을 지을 때 도면을 몇 장 그릴까요?',
sol:{ ans:'건물 설계도', fig:null,
steps:['건축 설계도는 평면도(위), 정면도(앞), 측면도(옆)로 그려요.','한 장만으로는 건물 모양을 알 수 없으니까요.','건물 설계도가 바로 이 단원의 실제 쓰임이에요! 3D 프린터·게임 모델링도 같은 원리예요.']}},
];
const TIERS=['기초','중급','상위','최상위'];
const TIER_DESC={기초:'영상만 봐도 바로 풀려요 — 배운 걸 그대로 적용.',중급:'한 번 더 생각 — 거꾸로·변형. 영상 안에 답이 있어요.',상위:'아래 학년 개념(선수 단원)을 함께 써야 풀려요.',최상위:'여러 개념·역발상·함정까지. 최고 난도.'};
let curTier='기초';
function tierProblems(t){ return P.map((p,i)=>({p,i})).filter(o=>o.p.tier===t); }
function renderTabs(){
const tb=document.getElementById('tabs'); tb.innerHTML='';
TIERS.forEach(t=>{ const n=tierProblems(t).length;
const b=document.createElement('button'); b.className='tab'+(t===curTier?' on':''); b.textContent=`${t} (${n})`;
b.onclick=()=>{curTier=t; renderTabs(); renderList();}; tb.appendChild(b); });
document.getElementById('tierNote').textContent=TIER_DESC[curTier];
}
function esc(x){return String(x).replace(/&/g,'&').replace(//g,'>');}
function renderList(){
const L=document.getElementById('list'); L.innerHTML='';
const items=tierProblems(curTier);
if(!items.length){ L.innerHTML='