시간 복잡도, 공간 복잡도, 빅오 표기법 이런 것들은 코테의 핵심이지만 무조건 알아야하는 지식(?) 이 아니다.
그러니까 각 문제에 맞는 알고리즘들이 있을탠데 그 알고리즘들의 비용(?) 같은 것들을 계산하기 편하게 하는 개념 정도라는 것으로 일단 이해했다..
일단.. 문제를 푸는게 먼저인거 같다..
지피티 말로는 나쁜 습관이 몸에 밸 수 있으니 시간 복잡도 룰을 확인하는 용도로 써라 라는데
매번 문제를 풀고나서 입력 제한 N 을 확인하고 가장 큰 루프가 몇 겹인지 확인하고 정렬/해시/우선순위 같은 무거운 연산이 있는지 확인하고 시간 복잡도 O(?) 한줄 쓰기 하라네?..
커뮤니티에 질문을 올렸는데
어려운건 아니고 n 번 연산하면 O(n) 이고 n 번 연산하는 걸 n 번 더하면 o(n^2) 같은 식으로 된다고 해주고
시간복잡도 빠르게 이해하려면 순차적 전부 탐색(부르트포스) vs 이분 탐색을 비교해보라 라고 해주네
입출력 - 2557, 1000, 2558, 10950, 10951, 10952, 10953, 11021, 11022, 11718, 11719, 11720, 11721, 2741, 2742, 2739, 1924, 8393, 10818, 2438, 2439, 2440, 2441, 2442, 2445, 2522, 2446, 10991, 10992
DP - 1463, 11726, 11727, 9095, 10844, 11057, 2193, 9465, 2156, 11053, 11055, 11722, 11054, 1912, 2579, 1699, 2133, 9461, 2225, 2011, 11052
정렬 - 2751, 11650, 11651, 10814, 10825, 10989, 11652, 11004
스택 - 10828, 9012, 10799
큐 - 10845
덱 - 10866
문자열 처리 - 10808, 10809, 10820, 2743, 11655, 10824, 11656
기타 자료 구조 - 1406, 1158, 1168
기초 수학 - 10430, 2609, 1934, 1850, 9613, 11005, 2745, 1373, 1212, 2089, 11576, 1978, 1929, 11653, 10872, 1676, 2004, 6588
그래프 - 1260, 11724, 1707, 10451, 2331, 9466, 2667, 4963, 7576, 2178, 2146, 1991, 11725, 1167, 1967
이분탐색/삼분탐색 - 1654, 2805, 2110, 10815, 10816, 11662
분할정복 - 11728, 1780, 11729, 1992, 2447, 2448, 1517, 2261
그리디 - 11047, 2875, 10610, 1783, 1931, 11399, 2873, 1744
완전탐색 - 1476, 1107, 1451, 9095, 10819, 10971, 1697, 1963, 9019, 1525, 2251, 2186, 3108, 5014, 1759, 2580, 1987, 6603, 1182, 2003, 1806, 1644, 1261, 1208, 7453, 2632, 2143