정답 대신 힌트로 코딩 문제 풀기

답을 보지 않고 막힌 지점만 짚어 달라고 한다

프롬프트 · 변수 3개

당신은 알고리즘 스터디를 이끄는 멘토입니다. 학생이 스스로 답에 도달하도록 돕는 것이 목표이므로, 요청하기 전에는 완성된 풀이 코드를 절대 보여 주지 않습니다.

저는 아래 문제를 풀고 있고, 지금 상태는 이렇습니다: {{막힌 부분}}

힌트를 세 단계로 나눠 주세요. 1단계는 제가 놓친 관찰이나 다시 읽어야 할 조건을 질문 형태로, 2단계는 어떤 방향으로 접근해야 하는지(자료구조나 접근 방식의 이름 정도까지), 3단계는 풀이의 큰 흐름을 말로 설명하되 코드는 쓰지 않는 것입니다. 1단계를 먼저 보여 주고 멈춰 주세요. 제가 "다음 힌트"라고 하면 그때 이어서 주세요.

각 단계는 세 문장 안으로 짧게 써 주세요. 마지막에 "지금 코드에서 확인해 볼 것" 한 줄을 덧붙여 주세요.

정답 코드나 정답에 가까운 코드 조각은 쓰지 마세요. 제 코드에 명백한 문법 오류나 잘못 읽은 조건이 있으면 그것만 알려 주세요. 제 접근이 처음부터 틀렸다면 새 방법을 알려 주기 전에 어디서부터 어긋났는지 먼저 짚어 주세요.

문제: """ {{문제 설명}} """

내 코드: """ {{내 코드}} """

복사한 뒤 여기에 붙여 넣으세요 · ChatGPT·Claude는 프롬프트를 실은 채 열립니다 ChatGPT에서 열기 ↗Claude에서 열기 ↗Gemini에서 열기 ↗뤼튼에서 열기 ↗ 빌더에서 고치기 수업용 카드 이미지 받기

결과 예시

1단계 힌트만 질문 세 문장으로 나온 뒤 멈췄고, 코드 조각은 한 줄도 섞이지 않았다.

배열 길이가 최대 10만이면 두 수를 고르는 모든 짝은 대략 몇 번이 될까요? 지금 코드가 덧셈을 몇 번 하는지 세어 보면 그 숫자와 어떻게 비교되나요? 지금 코드에서 확인해 볼 것: 안쪽 반복문의 j가 0부터 시작해 i와 같은 칸을 가리키는 경우까지 답으로 세고 있지 않은지 보세요.

"다음 힌트"라고 답해야 2단계가 이어진다.

Claude에서 실제로 실행해 확인 · 2026-09

왜 이렇게 쓰는가

역할
당신은 알고리즘 스터디를 이끄는 멘토입니다. 학생이 스스로 답에 도달하도록 돕는 것이 목표이므로, 요청하기 전에는 완성된 풀이 코드를 절대 보여 주지 않습니다.
맥락
저는 아래 문제를 풀고 있고, 지금 상태는 이렇습니다: {{막힌 부분}}
단계
힌트를 세 단계로 나눠 주세요. 1단계는 제가 놓친 관찰이나 다시 읽어야 할 조건을 질문 형태로, 2단계는 어떤 방향으로 접근해야 하는지(자료구조나 접근 방식의 이름 정도까지), 3단계는 풀이의 큰 흐름을 말로 설명하되 코드는 쓰지 않는 것입니다. 1단계를 먼저 보여 주고 멈춰 주세요. 제가 "다음 힌트"라고 하면 그때 이어서 주세요.
형식
각 단계는 세 문장 안으로 짧게 써 주세요. 마지막에 "지금 코드에서 확인해 볼 것" 한 줄을 덧붙여 주세요.
제약
정답 코드나 정답에 가까운 코드 조각은 쓰지 마세요. 제 코드에 명백한 문법 오류나 잘못 읽은 조건이 있으면 그것만 알려 주세요. 제 접근이 처음부터 틀렸다면 새 방법을 알려 주기 전에 어디서부터 어긋났는지 먼저 짚어 주세요.
입력 자료
문제: """ {{문제 설명}} """
입력 자료
내 코드: """ {{내 코드}} """

코딩 문제 힌트를 얻으려고 AI에게 문제를 붙여 넣으면 대부분 완성된 풀이 코드가 먼저 나옵니다. 그 코드는 대개 맞고, 제출하면 통과합니다. 그래서 이해하지 않은 채로 넘어가고, 비슷한 문제를 다시 만나면 또 같은 자리에서 막힙니다. 이 프롬프트는 답을 늦게 받기 위한 장치입니다.

역할을 "스터디 멘토"로 둔 것은 말투를 위해서가 아닙니다. 멘토라는 역할에는 "학생이 스스로 도달하게 한다"는 목적이 딸려 있어서, 뒤에 나오는 제한들이 자연스럽게 지켜집니다. 같은 문장을 "시니어 개발자"에게 시키면 리팩터링된 코드부터 나옵니다.

힌트를 세 단계로 나눈 것이 핵심입니다. 알고리즘 문제 풀이에서 필요한 도움의 크기는 사람마다 다릅니다. 조건 한 줄을 잘못 읽어서 막힌 사람에게는 1단계면 충분하고, 그 이상은 문제를 대신 풀어 주는 것이 됩니다. 단계를 나누고 중간에 멈추게 하면 필요한 만큼만 받아 갈 수 있습니다.

제약 문단의 "정답에 가까운 코드 조각도 쓰지 마세요"는 한 줄짜리 코드로 답을 흘리는 것을 막습니다. 여기에 "처음부터 틀렸다면 어디서부터 어긋났는지 먼저"를 붙인 이유는, 접근 자체가 틀렸을 때 AI가 새 풀이로 갈아타면 내가 왜 틀렸는지는 끝내 모른 채 남기 때문입니다.

용어가 낯설면 아하AI에서: role-prompting, chain-of-thought

나쁜 예와 비교

흔한 나쁜 예

이 문제 어떻게 풀어? 시간초과 나

(문제와 코드 붙여넣기)

해시맵을 쓰라는 설명과 함께 완성된 코드가 바로 나옵니다. 붙여 넣으면 통과하니 공부는 여기서 끝납니다. 정작 "이중 반복문을 왜 줄여야 하는가", "내 코드는 어디서 같은 값을 다시 보고 있는가"는 짚이지 않아서, 다음에 비슷한 문제를 만나도 스스로 알아채지 못합니다.

변형

코드는 돌아가는데 왜 되는지 모를 때

코드는 돌아가는데 왜 되는지 모를 때

아래 코드는 제가 남의 풀이를 참고해 쓴 것인데, 통과는 하지만 왜 되는지 설명하지 못하겠습니다. 코드를 고치지 말고, 핵심이 되는 줄을 세 곳만 골라 그 줄이 없으면 무엇이 깨지는지 설명해 주세요. 마지막에 제가 스스로 답해 볼 확인 질문 두 개를 내 주세요.

""" {{내 코드}} """

답을 이미 아는 상태에서 이해만 채울 때 씁니다. "없으면 무엇이 깨지는가"로 물으면 줄마다 기계적으로 붙는 설명 대신 이유가 나옵니다.

문제 자체가 이해되지 않을 때

문제 자체가 이해되지 않을 때

아래 문제를 풀이 없이 다시 설명해 주세요. 문제가 요구하는 입력과 출력을 표로 정리하고, 조건 중에 놓치기 쉬운 것 두 개를 골라 알려 주세요. 예제 입력 하나를 손으로 따라가며 왜 그 출력이 나오는지 보여 주되, 알고리즘이나 코드는 언급하지 마세요.

""" {{문제 설명}} """

지문이 길거나 번역이 어색해 조건부터 헷갈릴 때 씁니다. 풀이를 금지해야 문제 해석에만 답이 머뭅니다.

모델별 주의

답을 보고 싶어지면 "3단계 힌트까지 주세요"처럼 단계를 지정해 요청하세요. 처음부터 코드를 요구하면 힌트 제한이 쉽게 풀립니다

모델은 도움을 주려는 성향이 강해서 대화가 길어질수록 힌트 제한이 느슨해집니다. 답변에 코드가 섞이기 시작하면 "코드 없이 다음 단계 힌트만"이라고 다시 못 박아 주세요. 문제 지문을 캡처 이미지로 올리면 제한 조건이나 입력 범위를 잘못 읽는 일이 있으니 텍스트로 붙여 넣는 편이 좋습니다.

관련 프롬프트

마지막 수정 2026-09-02 · 잘못된 점이 있나요? 알려 주세요