알고리즘 문제를 풀고 풀이를 올리는 repository 입니다.
✨ = 스스로 잘 풀었다고 생각
🤔 = 어려웠음
✏ = 주석 꼼꼼히 작성함 (참고하기 좋다)
👀 = 답지 참고
| No. | Name | Group | Memo | Solution |
|---|---|---|---|---|
| 1000 | A+B | 📜 | ||
| 1001 | A-B | 📜 | ||
| 1008 | A/B | 소수점 아래 숫자 고정 | 📜 | |
| 1107 | 리모컨 | 브루트포스 범위 줄이려고 노력함. 예외가 너무 많아서 힘들었음 | 📜 | |
| 1149 | RGB거리✨ | DP | 📜 | |
| 1158 | 요세푸스 문제 | Queue | 📜 | |
| 1167 | 트리의 지름 | DFS | 1967번과 비슷한 문제, DFS 탐색을 2번 이용하여 풀음 | 📜 |
| 1212 | 8진수 2진수 | 📜 | ||
| 1248 | 맞춰봐 | 📜 | ||
| 1260 | DFS와 BFS | BFS, DFS | 📜 | |
| 1261 | 알고스팟 | BFS | 📜 | |
| 1309 | 동물원✨ | DP | 📜 | |
| 1373 | 2진수 8진수 | 📜 | ||
| 1406 | 에디터 | Stack | 📜 | |
| 1463 | 1로 만들기 | DP | 📜Top-down방식, 📜Bottom-up 방식 | |
| 1476 | 날짜 계산 | 📜 | ||
| 1676 | 팩토리얼 0의 개수✨ | 팩토리얼에서의 0의 개수 구하기, 5의 개수로 세어보면 됨 | 📜 | |
| 1697 | 숨바꼭질 | BFS | 📜 | |
| 1699 | 제곱수의 합 | DP | 📜 | |
| 1707 | 이분 그래프 | BFS | 스스로 히든케이스도 잘 생각해보고 꼼꼼히 코드를 작성해서 놓치는 케이스는 없었는데 마지막에 출력하는 부분에서 "\n" 안해줘서 여러 번 틀렸던.. 진짜 너무 아쉬운 문제... | 📜 |
| 1748 | 수 이어 쓰기 1 | 브루트포스 | 📜 | |
| 1759 | 암호 만들기 | 📜 | ||
| 1788 | 피보나치 수의 확장 | DP | 📜 | |
| 1874 | 스택 수열 | Stack | 📜 | |
| 1912 | 연속합 | DP | 📜 | |
| 1918 | 후위 표기식 | 차량기지 알고리즘(중위 표기법을 후위 표기법으로 변환) | 📜 | |
| 1929 | 소수 구하기 | 범위 내의 모든 소수 구하기, 에라토스테네스의 체 | 📜 | |
| 1932 | 정수 삼각형✨ | DP | 📜 | |
| 1934 | 최소공배수 | gcd | 📜 | |
| 1935 | 후위 표기식2 | 📜 | ||
| 1967 | 트리의 지름 | 1167번과 비슷한 문제, 포스트오더를 이용하여 풀었음 | 📜 | |
| 1978 | 소수 찾기 | 어떤 수가 소수인지 판단 | 📜 | |
| 1991 | 트리 순회 | 트리 | 📜 | |
| 2004 | 조합 0의 개수✨ | 조합에서 0의 개수 구하기, 팩토리얼과 비슷, 이번엔 5와 2 같이 세기 | 📜 | |
| 2089 | -2진수 | 진수 변환 (수학) | 📜 | |
| 2133 | 타일 채우기 | DP | 📜 | |
| 2146 | 다리 만들기✨ | BFS | 📜 | |
| 2156 | 포도주 시식 | DP | 📜 | |
| 2178 | 미로 탐색 | BFS | 📜 | |
| 2193 | 이친수 | DP | 📜 | |
| 2225 | 합분해 | DP | 📜 | |
| 2250 | 트리의 높이와 너비✨ | 트리, Queue이용한 BFS 탐색으로 최대 너비 탐색해줌, 50번째 줄에서 변수를 잘못 써서 여러 번 틀린 아쉬운 문제ㅠㅠ | 📜 | |
| 2309 | 일곱 난쟁이 | 📜 | ||
| 2468 | 안전 영역 | BFS | 📜 | |
| 2529 | 부등호 | 📜 | ||
| 2557 | Hello World | 📜 | ||
| 2558 | A+B - 2 | 📜 | ||
| 2579 | 계단 오르기 | DP | 📜 | |
| 2606 | 바이러스 | BFS | 📜 | |
| 2609 | 최대공약수와 최소공배수 | gcd, lcm | 📜 | |
| 2644 | 촌수계산 | BFS | 📜 | |
| 2667 | 단지번호붙이기 | BFS | 📜 | |
| 2743 | 단어 길이 재기 | 📜 | ||
| 2745 | 진법 변환 | 📜 | ||
| 3085 | 사탕 게임 | 📜 | ||
| 4963 | 섬의 개수 | BFS | 📜 | |
| 5014 | 스타트링크 | BFS | 📜 | |
| 6064 | 카잉 달력 | 브루트포스 | 📜 | |
| 6588 | 골드바흐의 추측 | 범위 내의 모든 소수 구하기, 에라토스테네스의 체 | 📜 | |
| 6603 | 로또 | 📜 | ||
| 7287 | 등록 | 📜 | ||
| 7562 | 나이트의 이동 | BFS | 📜 | |
| 7569 | 토마토 | BFS | 시간 좀 오래 걸렸음 | 📜, 📜좀 더 빠른 방법 |
| 7576 | 토마토 | BFS | 📜 | |
| 9012 | 괄호 | Stack | 📜, 📜스택 이용 풀이 | |
| 9093 | 단어 뒤집기 | Stack | 📜 | |
| 9095 | 1, 2, 3 더하기 | DP | 📜, 📜재귀함수를 이용한 브루트포스 풀이 | |
| 9205 | 맥주 마시면서 걸어가기 | 플로이드 워샬 | 📜 | |
| 9465 | 스티커 | DP | 📜 | |
| 9613 | GCD 합 | gcd | 📜 | |
| 10430 | 나머지 | 📜 | ||
| 10718 | We love kriii | 📜 | ||
| 10799 | 쇠막대기 | Stack | 📜 | |
| 10808 | 알파벳 개수 | 아스키코드, string | 📜 | |
| 10809 | 알파벳 찾기 | 아스키코드, string | 📜 | |
| 10819 | 차이를 최대로 | 📜 | ||
| 10820 | 문자열 분석 | 📜 | ||
| 10824 | 네 수 | 📜자리수 이용 풀이, 📜문자열 관련 함수 사용 | ||
| 10828 | 스택(구현) | Stack | 📜, 📜라이브러리 사용 | |
| 10844 | 쉬운 계단 수 | DP | 📜 | |
| 10845 | 큐(구현) | Queue | 📜, 📜라이브러리 사용 | |
| 10866 | 덱 | Stack, Queue | 📜 | |
| 10869 | 사칙연산 | 📜 | ||
| 10872 | 팩토리얼 | 📜 | ||
| 10950 | A+B - 3 | 📜 | ||
| 10951 | A+B - 4 | 📜 | ||
| 10952 | A+B - 5 | 📜 | ||
| 10971 | 외판원 순회 2 | 📜 | ||
| 10972 | 다음 순열 | 📜✏, 📜✏next_permutation 직접 구현해본 코드 | ||
| 10973 | 이전 순열 | 📜✏, 📜✏prev_permutation 직접 구현해본 코드 | ||
| 10974 | 모든 순열 | 📜 | ||
| 10998 | AxB | 📜 | ||
| 11005 | 진법 변환 2 | 📜 | ||
| 11021 | A+B - 7 | 📜 | ||
| 11022 | A+B - 8 | 📜 | ||
| 11052 | 카드 구매하기 | DP | 📜 | |
| 11053 | 가장 긴 증가하는 부분 수열✨ | DP | 📜 | |
| 11054 | 가장 긴 바이토닉 부분 수열 | DP | 📜 | |
| 11055 | 가장 큰 증가 부분 수열 | DP | 📜 | |
| 11057 | 오르막 수 | DP | 📜 | |
| 11576 | Base Conversion | 📜 | ||
| 11653 | 소인수분해 | 📜 | ||
| 11655 | ROT13 | 📜 | ||
| 11656 | 접미사 배열 | 정렬 | 📜 | |
| 11722 | 가장 긴 감소하는 부분 수열 | DP | 📜 | |
| 11724 | 연결 요소의 개수 | DFS | 📜 | |
| 11725 | 트리의 부모 찾기 | BFS, DFS | 📜, 📜DFS방법 | |
| 11726 | 2×n 타일링 | DP | 📜 | |
| 11727 | 2×n 타일링 2 | DP | 📜 | |
| 11729 | 하노이 탑 이동 순서 | 재귀 | 📜 | |
| 13023 | ABCDE | 📜 | ||
| 13398 | 연속합 2 | DP | 📜 | |
| 13549 | 숨바꼭질 3 | BFS | 📜 | |
| 13913 | 숨바꼭질 4 | BFS, 백트래킹 | 📜 | |
| 14002 | 가장 긴 증가하는 부분 수열 4✨ | DP | 📜 | |
| 14226 | 이모티콘 | BFS | 📜 | |
| 14500 | 테트로미노 | 📜 | ||
| 14501 | 퇴사 | DP | 📜DP 풀이, 📜재귀 풀이 | |
| 14503 | 로봇 청소기🤔 | DFS | 📜 | |
| 14889 | 스타트와 링크 | 📜 | ||
| 15353 | 큰 수 A+B (2) | 📜 | ||
| 15649 | N과 M (1) | 📜 | ||
| 15650 | N과 M (2) | 📜 | ||
| 15651 | N과 M (3) | 📜 | ||
| 15652 | N과 M (4) | 📜 | ||
| 15654 | N과 M (5) | 📜 | ||
| 15655 | N과 M (6) | 📜 | ||
| 15656 | N과 M (7) | 📜 | ||
| 15657 | N과 M (8) | 📜 | ||
| 15661 | 링크와 스타트 | 📜 | ||
| 15663 | N과 M (9) | 중복 제거 방식을 조금 다르게 해 봤음 | 📜 | |
| 15664 | N과 M (10) | 📜 | ||
| 15665 | N과 M (11) | 📜 | ||
| 15666 | N과 M (12) | 📜 | ||
| 15988 | 1, 2, 3 더하기 3 | DP | 📜 | |
| 15990 | 1, 2, 3 더하기 5 | DP | 📜 | |
| 16194 | 카드 구매하기 2 | DP | 📜 | |
| 16918 | 봄버맨 | 📜 | ||
| 16929 | Two Dots | DFS | 📜 | |
| 16940 | BFS 스페셜 저지 | BFS | 📜 | |
| 16947 | 서울 지하철 2호선 | DFS, BFS | 📜 | |
| 16964 | DFS 스페셜 저지 | DFS | 📜 | |
| 17087 | 숨바꼭질 6 | gcd (최대공약수) | 📜 | |
| 17103 | 골드바흐 파티션 | 범위 내의 모든 소수 구하기, 에라토스테네스의 체 | 📜 | |
| 17298 | 오큰수 | Stack | 📜 | |
| 17299 | 오등큰수 | Stack | 📜 | |
| 17404 | RGB거리 2 | DP | 📜 | |
| 17413 | 단어 뒤집기 2 | Stack | 📜 |
| No. | Name | Group | Memo | Solution |
|---|---|---|---|---|
| 1 | Two Sum | 📜 | ||
| 5 | Longest Palindromic Substring | DP | 📜👀✏ | |
| 20 | Valid Parentheses | 📜 | ||
| 42 | Trapping Rain Water | Two Pointers | 📜👀✏ | |
| 45 | Jump Game II | DP | 📜 | |
| 53 | Maximum Subarray | DP | later, try this problem with divide and conquer | 📜 |
| 55 | Jump Game | DP | 📜, 📜👀 | |
| 62 | Unique Paths | DP | 📜 | |
| 63 | Unique Paths II | DP | 📜 | |
| 64 | Minimum Path Sum | DP | 📜 | |
| 70 | Climbing Stairs | 📜 | ||
| 91 | Decode Ways✨ | DP | 문제를 읽으면서 반례를 꼼꼼히 생각해서 각 케이스를 구분해 가면서 풀었더니 한 번만에 맞았다ㅎㅎ | 📜 |
| 96 | Unique Binary Search Trees | DP | 📜 | |
| 104 | Maximum Depth of Binary Tree | recursion, tree | 📜 | |
| 118 | Pascal's Triangle | DP | 📜 | |
| 119 | Pascal's Triangle II | DP | 📜 | |
| 120 | Triangle | DP | 931번 문제와 비슷 | 📜 |
| 121 | Best Time to Buy and Sell Stock | DP | DP에 이렇게 풀 수 있는 문제 많은듯 (참고 : 121, 1014) | 📜, 📜better runtime |
| 122 | Best Time to Buy and Sell Stock II | DP | 📜 | |
| 136 | Single Number | bit manipulation | 📜 | |
| 139 | Word Break🤔 | DP | 📜👀✏ | |
| 145 | Binary Tree Postorder Traversal | 📜 | ||
| 152 | Maximum Product Subarray✨ | DP | 📜 | |
| 162 | Find Peak Element | 📜 | ||
| 198 | House Robber🤔 | DP | wrong several times | 📜 |
| 206 | Reverse Linked List | recursion, linked list | 📜 , 📜with recursion | |
| 213 | House Robber II | DP | 📜 | |
| 221 | Maximal Square | DP | 📜👀 | |
| 237 | Delete Node in a Linked List | 📜 | ||
| 264 | Ugly Number II | DP | 📜 | |
| 283 | Move Zeroes | 📜 | ||
| 300 | Longest Increasing Subsequence | DP | 📜 | |
| 304 | Range Sum Query 2D - Immutable | DP | 1314번 문제와 비슷함 | 📜 |
| 309 | Best Time to Buy and Sell Stock with Cooldown | DP | 📜👀✏ | |
| 338 | Counting Bits | DP | 📜 | |
| 344 | Reverse String | 📜 | ||
| 376 | Wiggle Subsequence | DP | 📜 | |
| 392 | Is Subsequence | 📜 | ||
| 412 | Fizz Buzz | 📜 | ||
| 413 | Arithmetic Slices | DP | 📜 | |
| 509 | Fibonacci Number | DP | 📜 | |
| 516 | Longest Palindromic Subsequence | DP | 📜 | |
| 611 | Valid Triangle Number | 📜 | ||
| 709 | To Lower Case | string | 📜 | |
| 714 | Best Time to Buy and Sell Stock with Transaction Fee | DP | 309번과 비슷하게 풀음 | 📜 |
| 740 | Delete and Earn | DP | 📜 | |
| 746 | Min Cost Climbing Stairs | DP | 📜, 📜0ms Runtime Solution | |
| 804 | Unique Morse Code Words | string | 📜 | |
| 844 | Backspace String Compare | stack | 📜 | |
| 894 | All Possible Full Binary Trees | 어려웠음 | 📜 | |
| 918 | Maximum Sum Circular Subarray🤔 | DP | 📜👀✏ | |
| 921 | Minimum Add to Make Parentheses Valid | stack | 📜 | |
| 931 | Minimum Falling Path Sum | DP | 120번 문제와 비슷함 | 📜 |
| 1004 | Max Consecutive Ones III | Sliding Window | 📜 | |
| 1014 | Best Sightseeing Pair | DP | DP에 이렇게 풀 수 있는 문제 많은듯 (참고 : 121, 1014) | 📜👀 |
| 1021 | Remove Outermost Parentheses | stack | 📜 | |
| 1043 | Partition Array for Maximum Sum🤔 | DP | 📜 | |
| 1047 | Remove All Adjacent Duplicates In String | stack | 📜 | |
| 1108 | Defanging an IP Address | 📜 | ||
| 1137 | N-th Tribonacci Number | DP | 📜 | |
| 1221 | Split a String in Balanced Strings | string | 📜 | |
| 1249 | Minimum Remove to Make Valid Parentheses | stack | 📜 | |
| 1277 | Count Square Submatrices with All Ones | DP | 📜 | |
| 1304 | Find N Unique Integers Sum up to Zero | 📜, 📜best solution | ||
| 1314 | Matrix Block Sum | DP | 📜 | |
| 1470 | Shuffle the Array | 📜 | ||
| 1480 | Running Sum of 1d Array | 📜 | ||
| 1512 | Number of Good Pairs | 📜 | ||
| 1528 | Shuffle String | string | 📜 | |
| 1567 | Maximum Length of Subarray With Positive Product | DP | 📜 | |
| 1598 | Crawler Log Folder | 📜 | ||
| 1662 | Check If Two String Arrays are Equivalent | string | 📜 | |
| 1641 | Count Sorted Vowel Strings | DP | 📜 | |
| 1678 | Goal Parser Interpretation | string | 📜 | |
| 1684 | Count the Number of Consistent Strings | string | 📜 | |
| 1704 | Determine if String Halves Are Alike | string | 📜 | |
| 1773 | Count Items Matching a Rule | string | 📜 | |
| 1816 | Truncate Sentence | string | 📜 | |
| 1832 | Check if the Sentence Is Pangram | string | 📜 | |
| 1844 | Replace All Digits with Characters | string | 📜 | |
| 1859 | Sorting the Sentence | string | 📜 | |
| 2000 | Reverse Prefix of Word | string | 📜 |