gemini

Gemini 알고리즘 풀이 프롬프트 - 코딩테스트 준비

알고리즘 문제 풀이, 코딩테스트 준비, 자료구조, 알고리즘 최적화를 수행합니다.

수정
💡

프롬프트 사용 방법

  1. 1단계: 아래 입력 칸에 각 항목에 맞는 정보를 적어주세요
  2. 2단계: 입력하면 아래 프롬프트가 자동으로 업데이트됩니다
  3. 3단계: '프롬프트 복사' 버튼을 눌러 ChatGPT/Claude에 붙여넣으세요

💡 입력 칸의 회색 글씨는 예시입니다. 참고해서 작성해보세요!

📝 필요한 정보를 입력해주세요 (총 9개)

problem title에 대한 값을 입력하세요

platform에 대한 값을 입력하세요

problem type에 대한 값을 입력하세요

problem description에 대한 값을 입력하세요

input constraints에 대한 값을 입력하세요

time limit에 대한 값을 입력하세요

sample input에 대한 값을 입력하세요

sample output에 대한 값을 입력하세요

사용할 프로그래밍 언어

📋 완성된 프롬프트 (복사해서 사용하세요)

당신은 IOI(국제정보올림피아드) 금메달리스트이자 16년 경력의 알고리즘 전문가입니다. LeetCode Hard 문제 500개 이상 해결, ACM-ICPC 월드 파이널 Top 10, 알고리즘 강의 수강생 5만 명을 보유해 온 전문가로서 알고리즘 문제 분석 및 솔루션을 제시하세요.


## 문제 정보
- 제목: {{problem_title}}
- 플랫폼: {{platform}}
- 유형: {{problem_type}}

## 문제 설명
{{problem_description}}

## 제약 조건
- 입력 크기: {{input_constraints}}
- 시간 제한: {{time_limit}}

## 입출력 예시
입력: {{sample_input}}
출력: {{sample_output}}

## 언어
{{language}}

## 분석 방법
1. 문제 유형 식별, 복잡도 추정
2. 접근법 비교 (브루트포스 → 최적화)
3. 구현 코드 + 복잡도 분석
4. 엣지 케이스 처리

입력하지 않은 항목은 원래 표시를 유지합니다.

간단 버전

알고리즘 문제를 풀어주세요.
문제: {{problem_description}}
입력: {{sample_input}}, 출력: {{sample_output}}
언어: {{language}}
문제 유형, 접근법, 코드, 복잡도 포함

입력값 가이드

입력 항목 한국어 설명 placeholder 예시
problem_description 문제 내용을 입력하세요 예: 두 수의 합이 target이 되는 인덱스 찾기 두 수의 합이 target이 되는 인덱스 찾기
input_constraints 입력 크기나 범위를 입력하세요 예: 2 ≤ n ≤ 10^4 2 ≤ n ≤ 10^4
sample_input 입력 예시를 입력하세요 예: [2,7,11,15], 9 [2,7,11,15], 9
sample_output 출력 예시를 입력하세요 예: [0,1] [0,1]
language 사용할 언어를 선택하세요 예: Python, JavaScript Python, JavaScript, Java
platform 문제 출처를 선택하세요 예: 백준, 리트코드 백준, 리트코드, 프로그래머스

인풋 필드

[문제 내용]
▼ 텍스트 영역 입력
placeholder: "예: 두 수의 합이 target이 되는 인덱스 찾기"
설명: 문제 내용을 입력하세요

[입력 제약 조건]
▼ 텍스트 영역 입력
placeholder: "예: 2 ≤ n ≤ 10^4"
설명: 입력 크기나 범위를 입력하세요

[입력 예시]
▼ 텍스트 영역 입력
placeholder: "예: [2,7,11,15], 9"
설명: 입력 예시를 입력하세요

[출력 예시]
▼ 텍스트 영역 입력
placeholder: "예: [0,1]"
설명: 출력 예시를 입력하세요

[언어]
▼ 드롭다운 선택
옵션: Python, JavaScript, Java, C++, Go, Rust
placeholder: "예: Python, JavaScript"
설명: 사용할 언어를 선택하세요

[플랫폼]
▼ 드롭다운 선택
옵션: 백준, 리트코드, 프로그래머스, 코드포스
placeholder: "예: 백준, 리트코드"
설명: 문제 출처를 선택하세요

N에 따른 허용 복잡도

N 범위 허용 복잡도
N ≤ 10 O(N!), O(2^N)
N ≤ 20 O(2^N), 백트래킹
N ≤ 100 O(N³)
N ≤ 1,000 O(N²)
N ≤ 100,000 O(N log N) 필수
N ≤ 1,000,000 O(N)

자료구조 선택

용도 추천 자료구조 복잡도
빠른 검색 HashSet O(1)
빈도 카운팅 HashMap O(1)
정렬된 검색 이분 탐색 O(log n)
최소/최대 우선순위 큐 O(log n)

핵심 알고리즘 패턴

투 포인터

left, right = 0, len(arr) - 1
while left < right:
    left += 1  # 또는 right -= 1

이분 탐색

while left <= right:
    mid = (left + right) // 2
    if arr[mid] == target: return mid

BFS

from collections import deque
queue = deque([start])
while queue:
    node = queue.popleft()

문제 유형 분류

유형 핵심 기법
배열/문자열 투포인터, 슬라이딩 윈도우
그래프 BFS, DFS, 다익스트라
DP 메모이제이션, 탭뷸레이션
정렬/탐색 이분탐색, 매개변수 탐색

엣지 케이스 체크리스트

  • 빈 입력: [], "", 0
  • 단일 요소: [1], "a"
  • 모두 같은 값: [1,1,1,1]
  • 경계값: INT_MAX, INT_MIN

🚀 AI 바로 열기

🔗 관련 프롬프트