클로드 알고리즘 설계 프롬프트 - 자료구조 코딩테스트 최적화
Claude로 알고리즘 설계, 자료구조 선택, 시간복잡도 분석, 코딩테스트 문제 해결을 위한 프롬프트입니다. 효율적인 알고리즘 설계부터 최적화 기법까지 다룹니다.
프롬프트 사용 방법
- 1단계: 아래 입력 칸에 각 항목에 맞는 정보를 적어주세요
- 2단계: 입력하면 아래 프롬프트가 자동으로 업데이트됩니다
- 3단계: '프롬프트 복사' 버튼을 눌러 ChatGPT/Claude에 붙여넣으세요
💡 입력 칸의 회색 글씨는 예시입니다. 참고해서 작성해보세요!
📝 필요한 정보를 입력해주세요 (총 9개)
문제 유형에 대한 값을 입력하세요
입력 크기에 대한 값을 입력하세요
제약 조건에 대한 값을 입력하세요
문제 설명에 대한 값을 입력하세요
입력 형식에 대한 값을 입력하세요
출력 형식에 대한 값을 입력하세요
예제 입력에 대한 값을 입력하세요
예제 출력에 대한 값을 입력하세요
프로그래밍 언어에 대한 값을 입력하세요
📋 완성된 프롬프트 (복사해서 사용하세요)
당신은 ACM ICPC World Finalist 출신 알고리즘 전문가입니다. 15년간 경쟁 프로그래밍과 알고리즘 최적화를 연구해 온 전문가로서 효율적인 알고리즘을 설계하세요.
## 문제 정보
- 문제 유형: {{문제_유형}}
- 입력 크기: {{입력_크기}}
- 제약 조건: {{제약_조건}}
## 문제 설명
{{문제_설명}}
### 입력 형식
{{입력_형식}}
### 출력 형식
{{출력_형식}}
### 예시
입력: {{예제_입력}}
출력: {{예제_출력}}
## 알고리즘 설계 프로세스
### 1단계: 문제 분석
- 문제 유형 식별: 정렬/탐색, 그래프, DP, 그리디, 이분탐색
- 입력 크기 분석: N 범위에 따른 허용 복잡도
- 제약 조건 확인: 시간/메모리 제한
### 2단계: 자료구조 선택
- 배열/리스트: O(1) 인덱싱
- 해시 테이블: O(1) 검색
- 우선순위 큐: O(log N) 삽입/삭제
- 스택/큐: O(1) 삽입/삭제
### 3단계: 알고리즘 설계
- 투 포인터: 정렬된 배열에서 두 수 합
- 슬라이딩 윈도우: 고정 길이 구간
- 이분 탐색: 정렬된 데이터 검색
- BFS/DFS: 그래프 탐색
- DP: 최적 부분구조 + 중복 부분문제
### 4단계: 복잡도 분석
- 시간 복잡도: 루프 중첩, 재귀 호출
- 공간 복잡도: 입력 + 보조 + 재귀 스택
### 5단계: 엣지 케이스
빈 입력, 단일 요소, 경계값, 오버플로우
## 출력 형식
1. 문제 분석 (유형, 입력 크기, 제약)
2. 알고리즘 선택 (이유, 시간/공간 복잡도)
3. 핵심 아이디어
4. 구현 코드 ({{프로그래밍_언어}})
5. 엣지 케이스 처리
6. 최적화 포인트 입력하지 않은 항목은 원래 표시를 유지합니다.
자동 복사를 사용할 수 없습니다. 아래 선택된 내용을 Ctrl+C 또는 ⌘C로 복사하거나, 길게 눌러 복사하세요.
입력값 가이드
아래 9개의 항목을 입력하면 맞춤형 알고리즘 설계를 제공해 드립니다.
| 입력 항목 | 한국어 설명 | placeholder | 예시 |
|---|---|---|---|
| 문제 유형 | 문제가 어떤 알고리즘 유형인지 파악해서 적어주세요 | 최단 경로 선택 | 최단 경로, LIS, DP, 이분 탐색, 그래프 탐색 |
| 입력 크기 | 입력 데이터의 최대 크기를 적어주세요 | N ≤ 100,000 선택 | N ≤ 100,000, N ≤ 10^6, N, M ≤ 1000 |
| 제약 조건 | 시간 제한과 메모리 제한을 적어주세요 | 예: 시간 2초, 메모리 256MB | 시간: 2초, 메모리: 256MB, 1초 이내 |
| 문제 설명 | 문제의 전체 설명을 복사해서 붙여넣어 주세요 | 예: 시작점부터 모든 정점까지 최단 거리 | 시작점부터 모든 정점까지의 최단 거리를 구하시오 |
| 입력 형식 | 입력이 어떤 형식으로 주어지는지 적어주세요 | 예: 첫째 줄: N M | 첫째 줄: N M, 둘째 줄~M개 줄: u v w |
| 출력 형식 | 출력해야 할 결과 형식을 적어주세요 | 예: i번째 정점까지의 최단 거리 | i번째 정점까지의 최단 거리를 한 줄씩 출력 |
| 예제 입력 | 실제 입력 예시를 복사해서 붙여넣어 주세요 | 예: 5 6 1 | 5 6 1\n5 1 1\n1 2 2\n... |
| 예제 출력 | 실제 출력 예시를 복사해서 붙여넣어 주세요 | 예: 0 2 3 7 INF | 0\n2\n3\n7\nINF |
| 프로그래밍 언어 | 코드를 작성할 프로그래밍 언어를 적어주세요 | Python 선택 | Python, C++, Java, JavaScript |
인풋 필드
[문제 유형]
▼ 드롭다운 선택
옵션: 최단 경로, LIS (최장 증가 부분수열), DP (동적 프로그래밍), 이분 탐색, 그래프 탐색, 정렬, 해싱
placeholder: "최단 경로"
설명: 문제가 어떤 알고리즘 유형인지 파악해서 적어주세요
[입력 크기]
▼ 드롭다운 선택
옵션: N ≤ 100, N ≤ 1,000, N ≤ 100,000, N ≤ 1,000,000, N ≤ 10^6
placeholder: "N ≤ 100,000"
설명: 입력 데이터의 최대 크기를 적어주세요
[제약 조건]
▼ 라디오 버튼 선택
옵션: ☐ 시간 1초 이내 ☐ 시간 2초 이내 ☐ 메모리 256MB 이하 ☐ 제약 없음
placeholder: "시간: 2초, 메모리: 256MB"
설명: 시간 제한과 메모리 제한을 적어주세요
[문제 설명]
▼ 텍스트 영역 입력
placeholder: "예: 시작점부터 모든 정점까지의 최단 거리를 구하시오"
설명: 문제의 전체 설명을 복사해서 붙여넣어 주세요
[입력 형식]
▼ 텍스트 영역 입력
placeholder: "예: 첫째 줄: N M, 둘째 줄~M개 줄: u v w"
설명: 입력이 어떤 형식으로 주어지는지 적어주세요
[출력 형식]
▼ 텍스트 영역 입력
placeholder: "예: i번째 정점까지의 최단 거리를 한 줄씩 출력"
설명: 출력해야 할 결과 형식을 적어주세요
[예제 입력]
▼ 텍스트 영역 입력
placeholder: "예: 5 6 1\n5 1 1\n1 2 2"
설명: 실제 입력 예시를 복사해서 붙여넣어 주세요
[예제 출력]
▼ 텍스트 영역 입력
placeholder: "예: 0\n2\n3\n7\nINF"
설명: 실제 출력 예시를 복사해서 붙여넣어 주세요
[프로그래밍 언어]
▼ 드롭다운 선택
옵션: Python, C++, Java, JavaScript, Go, Rust
placeholder: "Python"
설명: 코드를 작성할 프로그래밍 언어를 적어주세요
N 크기별 추천 복잡도
| N | 추천 복잡도 |
|---|---|
| N ≤ 100 | O(N³) |
| N ≤ 1,000 | O(N²) |
| N ≤ 100,000 | O(N log N) |
| N ≤ 1,000,000 | O(N) |
| N > 1,000,000 | O(N) 미만 |
자료구조 선택
| 용도 | 자료구조 | 시간 복잡도 |
|---|---|---|
| 빠른 검색 | 해시 테이블 | O(1) |
| 최소/최대 | 우선순위 큐 | O(log N) |
| 범위 쿼리 | 세그먼트 트리 | O(log N) |
| LIFO/FIFO | 스택/큐 | O(1) |
| 집합 병합 | 유니온 파인드 | O(α(N)) |
핵심 알고리즘 패턴
| 패턴 | 설명 |
|---|---|
| 투 포인터 | 정렬된 배열에서 두 수 합 |
| 슬라이딩 윈도우 | 고정 길이 구간 합/최대 |
| 이분 탐색 | 정렬 데이터 검색, 매개변수 탐색 |
| BFS/DFS | 그래프 탐색, 최단 경로 |
| DP | 메모이제이션, 탭뷸레이션 |
언어별 최적화
| 언어 | 팁 |
|---|---|
| Python | sys.stdin.readline, set/dict O(1) 조회 |
| C++ | ios::sync_with_stdio(false), unordered_map |
| Java | BufferedReader, StringBuilder |
주의사항
| 주의점 | 설명 |
|---|---|
| 복잡도 먼저 | 구현 전 시간/공간 복잡도 계산 |
| 엣지 케이스 | 빈 입력, 경계값, 최대 입력 테스트 |
| 오버플로우 | 큰 수는 적절한 타입 사용 |
| 단순하게 | 복잡한 최적화보다 단순한 정답 먼저 |
🚀 AI 바로 열기
🔗 관련 프롬프트
클로드 코드 리뷰 프롬프트 - 전문가 수준 AI 코드 검토
Claude를 활용한 전문가 수준의 코드 리뷰 프롬프트입니다. 보안 취약점, 성능 이슈, 코드 품질, 아키텍처 문제를 체계적으로 분석하고 개선 제안을 받을 수 있습니다.
클로드 버그 수정 가이드 프롬프트 - 체계적 디버깅 솔루션
Claude를 활용한 체계적인 버그 수정 가이드 프롬프트입니다. 런타임 에러, 논리 버그, 성능 이슈를 분석하고 원인을 파악하며 구체적인 해결책을 제시합니다.
클로드 성능 최적화 프롬프트 - 코드 튜닝 및 병목 해결
Claude를 활용한 코드 성능 최적화, 메모리 관리, 알고리즘 개선, 응답 시간 단축 프롬프트입니다. Big-O 복잡도 분석부터 캐싱 전략까지 체계적으로 다룹니다.
ChatGPT 알고리즘 문제 풀이 프롬프트 - 코딩테스트 완벽 대비
ChatGPT로 알고리즘 문제를 풀이하는 프롬프트입니다. 코딩테스트 필수 알고리즘을 단계별로 분석하고 최적화된 해법을 제시합니다.