We’re not crying, it’s just brain sweat. This is our two-person algorithm study repo. 🦫🦫🧠💦

🧩 유형별로 하나씩 이론을 공부하고, 관련 문제를 풀며 실력을 쌓아갑니다.
🧠 문제를 보면 ‘이건 이렇게 풀면 되겠다’는 흐름이 자연스럽게 떠오를 수 있도록, 꾸준히 문제 해결 능력을 기릅니다.
🧩 알고리즘 개념과 기법을 유형별로 정리해두는 이론 중심 노트입니다.
🧠 문제를 풀다가 유용한 팁이나 아이디어가 떠오르면, 선택적으로 덧붙이는 방식으로 관리합니다.
각 알고리즘 유형별 문제에 대한 풀이를 정리합니다.
| 문제 번호 | 문제 이름 | 난이도 | 풀이 링크 | ⭐ | 💬 |
|---|---|---|---|---|---|
| 5525 | IOIOI | Silver 1 | Seunga | ⭐ | #시간복잡도 |
| 9935 | 문자열 폭발 | Gold 4 | Seunga | ⭐ | 스택 + 비교 |
| 문제 번호 | 문제 이름 | 난이도 | 풀이 링크 | ⭐ | 💬 |
|---|---|---|---|---|---|
| 2504 | 괄호의 값 | Gold 5 | 내일쓸꺼 | ⭐ | |
| 2493 | 탑 | Gold 4 | Seunga | ⭐ | |
| 1417 | 국회의원 선거 | Silver 5 | Seunga | 힙⭐ | |
| 2075 | N번째 큰 수 | Silver 3 | Seunga | 힙⭐ |
| 문제 번호 | 문제 이름 | 난이도 | 풀이 링크 | ⭐ | 💬 |
|---|---|---|---|---|---|
| 체육복 | 체육복 | level 1 | Seunga | 기본 | |
| 5585 | 거스름돈 | Bronze 2 | Seunga, Moon | 기본 | |
| 1543 | 문제 검색 | Silver 5 | Seunga | ||
| 20044 | Project Teams | Silver 4 | Seunga | 기본 | |
| 1026 | 보물 | Silver 4 | Seunga | 기본 | |
| 2217 | 로프 | Silver 4 | Seunga | 발상 | |
| 2012 | 등수 매기기 | Silver 3 | Seunga | 기본 | |
| 1459 | 걷기 | Silver 3 | Seunga | ⭐ | 그리디 + 좌표 |
| 1541 | 잃어버린 괄호 | Silver 2 | Seunga | 발상 | |
| 1715 | 카드 정렬하기 | Gold 4 | Seunga | ⭐ | 그리디 + 힙 |
| 문제 번호 | 문제 이름 | 난이도 | 풀이 링크 | ⭐ | 💬 |
|---|---|---|---|---|---|
| 2468 | 안전 영역 | Silver 1 | Seunga | BFS/DFS로 영역 개수 세기 | |
| 4963 | 섬의 개수 | Silver 2 | Seunga | 8방향 DFS 대표 | |
| 11123 | 양 한마리... 양 두마리... | Silver 2 | Seunga | 그래프 탐색 연습 | |
| 13565 | 침투 | Silver 2 | Seunga | 위에서 아래로 퍼지는 DFS | |
| 게임 맵 최단거리 | 게임 맵 최단거리 | level 2 | Seunga | BFS 최단거리 기본 | |
| 네트워크 | 네트워크 | level 3 | Seunga | DFS 연결 요소 | |
| 단어 변환 | 단어 변환 | level 3 | Seunga | BFS로 단계 구하기 | |
| 여행 경로 | 여행 경로 | level 3 | Seunga | DFS + 백트래킹 | |
| 타겟 넘버 | 타겟 넘버 | level 2 | Seunga | DFS/재귀 기본 | |
| 7567 | 나이트의 이동 | Silver 1 | Seunga | ⭐ | 최단거리 BFS |
| 문제 번호 | 문제 이름 | 난이도 | 풀이 링크 | ⭐ | 💬 |
|---|---|---|---|---|---|
| 32680 | 두 스택 | Silver 3 | Seunga | ||
| 2373 | 파일 구별하기 | Silver 3 | Seunga | ||
| 30804 | 과일 탕후루 | Silver 2 | Seunga | ||
| 1535 | 안녕 | Silver 2 | Seunga | ||
| 2057 | 팩토리얼 분해 | Silver 5 | Seunga | ||
| 1182 | 부분수열의 합 | Silver 2 | Seunga | ||
| 14501 | 퇴사 | Silver 3 | Seunga | ⭐ | DFS + 완탐 대표 유형 |
| 14888 | 연산자 끼워넣기 | Silver 1 | Seunga | ||
| 42839 | 소수 찾기 | level 2 | Seunga | 완탐 & 순열 | |
| 42842 | 카펫 | level 2 | Seunga |
| 문제 번호 | 문제 이름 | 난이도 | 풀이 링크 | ⭐ | 💬 |
|---|---|---|---|---|---|
| 14891 | 톱니바퀴 | Gold 5 | 이름1 풀이, 이름2 풀이 | ||
| 28298 | 더 흔한 타일 색칠 문제 | Silver 2 | Seunga | ⭐⭐⭐⭐⭐ | 다차원 리스트 접근 + 타일 축소 + most common |
| 20546 | 🐜 기적의 매매법 🐜 | Silver 5 | Seunga | ⭐ | |
| 8979 | 올림픽 | Silver 5 | Seunga | 기업 기출 | |
| 21921 | 블로그 | Silver 3 | Seunga | 시간 복잡도 |
| 문제 번호 | 문제 이름 | 난이도 | 풀이 링크 | ⭐ | 💬 |
|---|---|---|---|---|---|
| 7662 | 이중 우선순위 큐 | Gold 4 | Seunga | ||
| 7785 | 회사에 있는 사람 | Silver 5 | Seunga | ||
| 9375 | 패션왕 신해빈 | Silver 3 | Seunga | ||
| 13414 | 수강신청 | Silver 3 | Seunga |
| 문제 번호 | 문제 이름 | 난이도 | 풀이 링크 | ⭐ | 💬 |
|---|---|---|---|---|---|
| 1717 | 집합의 표현 | Gold 5 | Seunga | ⭐ | 대표 유형 |
| 4195 | 친구 네트워크 | Gold 2 | Seunga | 응용 | |
| 11000 | 강의실 배정 | Gold 5 | Seunga | ⭐ |
SQL 코딩 테스트 대비 lv 4, 5
| 문제 | 난이도 | ⭐ | ✅ |
|---|---|---|---|
| 잡은 물고기 중 가장 큰 물고기의 길이 구하기 | Lv. 1 | ✅ CONCAT | |
| 즐겨찾기가 가장 많은 식당 정보 출력하기 | Lv. 3 | ⭐⭐⭐ | ✅ ROW_NUMBER() OVER |
| 물고기 종류 별 대어 찾기 | Lv. 3 | ⭐⭐⭐ | ✅ ROW_NUMBER() OVER |
| 대장균의 크기에 따라 분류하기 2 | Lv. 3 | ⭐⭐⭐ | ✅ NTILE() OVER |
| 보호에서 중성화한 동물 | Lv. 4 | ✅ | |
| 식품분류별 가장 비싼 식품의 정보 조회하기 | Lv. 4 | ⭐ | ✅ CTE, 윈도우 함수 |
| 5월 식품들의 총매출 조회하기 | Lv. 4 | ⭐ | ✅ CTE |
| 취소되지 않은 진료 예약 조회하기 | Lv. 4 | ✅ table 3개 조인 | |
| 저자 별 카테고리 별 매출액 집계하기 | Lv. 4 | ✅ | |
| 년, 월, 성별 별 상품 구매 회원 수 구하기 | Lv. 4 | ✅ YEAR, MONTH, DISTINCT | |
| 서울에 위치한 식당 목록 출력하기 | Lv. 4 | ✅ | |
| 우유와 요거트가 담긴 장바구니 | Lv. 4 | ✅ HAVING | |
| 주문량이 많은 아이스크림을 조회하기 | Lv. 4 | ✅ UNION ALL | |
| 연간 평가점수에 해당하는 평가 등급 및 성과금 조회하기 | Lv. 4 | ✅ CASE | |
| 그룹별 조건에 맞는 식당 목록 출력하기 | Lv. 4 | ⭐ | ✅ CTE, DATE_FORMAT |
| 오프라인/온라인 판매 데이터 통합하기 | Lv. 4 | ✅ UNION ALL + NULL AS | |
| 입양 시각 구하기(2) | Lv. 4 | ⭐⭐⭐ | ✅ RECURSIVE CTE, LEFT JOIN, IFNULL |
| 특정 세대의 대장균 찾기 | Lv. 4 | ⭐⭐ | ✅ 계층형, RECURSIVE CTE |
| 자동차 대여 기록 별 대여 금액 구하기 | Lv. 4 | ✅ IFNULL, CTE | |
| FrontEnd 개발자 찾기 | Lv. 4 | ✅ 비트마스킹 | |
| 특정 기간동안 대여 가능한 자동차들의 대여비용 구하기 | Lv. 4 | ✅ WHERE NOT | |
| 상품을 구매한 회원 비율 구하기 | Lv. 5 | ✅ | |
| 언어별 개발자 분류하기 | Lv. 4 | ✅ CASE 여러개, 비트마스킹 | |
| 멸종위기의 대장균 찾기 | Lv. 5 | 🔥 | ✅ RECURSIVE CTE, CTE |
알고리즘 유형별 대비
| 유형 | 문제명 | 난이도 | ⭐ | ✅ |
|---|---|---|---|---|
| 해시 | 완주하지 못한 선수 | Level 1 | ✅ Counter 차집합? 연산? | |
| 해시 | 폰켓몬 | Level 1 | ✅ | |
| 해시 | 전화번호 목록 | Level 2 | ✅ startswith 문자열 | |
| 해시 | 의상 | Level 2 | ||
| 해시 | 베스트앨범 | Level 3 | ||
| 스택/큐 | 같은 숫자는 싫어 | Level 1 | ✅ | |
| 스택/큐 | 기능개발 | Level 2 | ✅ | |
| 스택/큐 | 올바른 괄호 | Level 2 | ✅ | |
| 스택/큐 | 프로세스 | Level 2 | ||
| 스택/큐 | 다리를 지나는 트럭 | Level 2 | ||
| 스택/큐 | 주식가격 | Level 2 | ||
| 힙 | 더 맵게 | Level 2 | ✅ | |
| 힙 | 디스크 컨트롤러 | Level 3 | ⭐⭐⭐ | ✅ |
| 힙 | 이중우선순위큐 | Level 3 | ✅ | |
| 정렬 | K번째수 | Level 1 | ||
| 정렬 | 가장 큰 수 | Level 2 | ||
| 정렬 | H-Index | Level 2 | ||
| 완전탐색 | 최소직사각형 | Level 1 | ||
| 완전탐색 | 모의고사 | Level 1 | ||
| 완전탐색 | 소수 찾기 | Level 2 | ||
| 완전탐색 | 카펫 | Level 2 | ||
| 완전탐색 | 피로도 | Level 2 | ||
| 완전탐색 | 전력망을 둘로 나누기 | Level 2 | ||
| 완전탐색 | 모음사전 | Level 2 | ||
| 탐욕법 | 체육복 | Level 1 | ✅ | |
| 탐욕법 | 조이스틱 | Level 2 | ||
| 탐욕법 | 큰 수 만들기 | Level 2 | ||
| 탐욕법 | 구명보트 | Level 2 | ||
| 탐욕법 | 섬 연결하기 | Level 3 | ||
| 탐욕법 | 단속카메라 | Level 3 | ||
| 동적계획법 | N으로 표현 | Level 3 | 대표 | ✅ |
| 동적계획법 | 정수 삼각형 | Level 3 | ||
| 동적계획법 | 등굣길 | Level 3 | ||
| 동적계획법 | 사칙연산 | Level 4 | ||
| 동적계획법 | 도둑질 | Level 4 | ||
| DFS/BFS | 타겟 넘버 | Level 2 | ✅ | |
| DFS/BFS | 네트워크 | Level 3 | ✅ dfs 대표 | |
| DFS/BFS | 게임 맵 최단거리 | Level 2 | ✅ bfs 대표 | |
| DFS/BFS | 단어 변환 | Level 3 | ✅ zip | |
| DFS/BFS | 아이템 줍기 | Level 3 | ||
| DFS/BFS | 여행경로 | Level 3 | ||
| DFS/BFS | 퍼즐 조각 채우기 | Level 3 | ||
| 이분탐색 | 입국심사 | Level 3 | ||
| 이분탐색 | 징검다리 | Level 4 | ||
| 그래프 | 가장 먼 노드 | Level 3 | ✅ | |
| 그래프 | 순위 | Level 3 | ||
| 그래프 | 방의 개수 | Level 5 |
📄 docs: Update README
- 리드미 수정 시 사용
Examples:
docs: 📄 Update README with commit rulesdocs: 📝 Add study guide to READMEdocs: 🔧 Fix formatting in README
📚 study: Add [학습 내용]
- 알고리즘 이론, 개념 정리, 학습 링크 추가 시 사용
Examples:
study: 📚 Add data structures overview to notesstudy: 🧠 Add notes on Dijkstra's algorithmstudy: 🔗 Link external tutorial on Fenwick Tree
🧠 feat: Add [문제 번호]
- 알고리즘 코드 업로드 시 사용
Examples:
feat: 🧠 Add BOJ 10828 stack solutionfeat: 🌟 Add Programmers 1114 BFS solution
각 풀이 파일은 다음 형식을 따라주세요:
# [문제 번호] 문제 제목
## 🔗 Problem Link
https://www.acmicpc.net/problem/문제번호
## 💡 Approach
어떤 알고리즘을 사용했고, 어떻게 접근했는지를 간단히 설명합니다.
## 🧾 Code
```(언어)
(코드 작성)
```
## 🎯 Key Point
이 문제에서 중요한 핵심 아이디어 또는 포인트를 정리합니다.
## 📚 What I Learned
문제를 풀면서 새롭게 알게 된 점이나 배운 내용을 기록합니다.