알고리즘/코딩테스트 문제 정리
-
[99클럽] stack 구현알고리즘/코딩테스트 문제 정리 2025. 2. 3. 14:14
🌈 문제 풀기 전 내 생각1. 간단하게 stack에 대한 조건을 하나씩 구현해나가면 될 것 같다 문제를 잘 읽고 풀어보자.소요 시간: 30분 ☄️ 문제 풀이 코드import sys# stack 실버 4def beginner(): N = int(input()) stack = [] for _ in range(N): action = sys.stdin.readline().split() if len(action) > 1: _, value = action stack.append(value) elif 'top' in action: print(stack[len(stack) - 1]) elif..
-
[99클럽] 이분탐색 활용알고리즘/코딩테스트 문제 정리 2025. 1. 22. 15:11
☄️ 문제 풀이 전 내 생각2개의 배열을 비교해서 없는 하나를 찾아내는 문제로 순열탐색으로 실행할 경우 재료의 종류가 최대 1000개이므로상당히 오래걸릴 것 같다. 비교를할 때 어떻게 해야 최소화를 할 수 있는지 생각해보자문제에서 한 번씩만 주어진다는 표현을 보니 set()을 사용하진 않을 것 같다. map을 사용해서 value의 값이 1인 것을 찾아내는 건 어떨까?아니면 리스트에 sort()를 이용해서 이분탐색을 사용하는 방식은?이분탐색에 대한 개념이 좀 부족하니 이 방식으로 문제를 구현해보자. 또한 앞선 map을 이용한 방식보다 시간복잡도가 상당히 줄어들 것 같은 예감이 든다.소요시간: 45분 🌈 파이썬 코드def 이분탐색(lst1, lst2): start = 0 end = len(l..
-
[99클럽] dict 활용 초급알고리즘/코딩테스트 문제 정리 2025. 1. 20. 13:11
🌈 파이썬 코드N = int(input())def solution_1(N): dict_1 = {} for i in range(N): fruit, amount = input().split(" ") amount = int(amount) keys = dict_1.keys() if fruit in keys: dict_1[fruit] += amount else: dict_1[fruit] = amount if 5 in dict_1.values(): return 'YES' return 'NO'print(solution_1(N))간단한 문제 풀이였는데 여기서 시간이 너무 오래걸려..
-
[99클럽] 입력알고리즘/코딩테스트 문제 정리 2025. 1. 16. 13:38
🌈 파이썬 코드N,M = map(int, input().split(" "))def solution_1(string): return "".join(reversed(list(string)))for _ in range(N): string = input() print(solution_1(string)) # 입력값을 사용할 때 sys.stdin.readline().strip()을 사용해보자import sysdef solution_1(string): return "".join(reversed(list(string)))N, M = map(int, input().split())for _ in range(N): string = sys.stdin.readline().strip() ..