본문 바로가기

항해9913

99클럽 코테 스터디 4일차 TIL + 백준 2343 기타 레슨 (파이썬) ※ 2343 기타 레슨https://www.acmicpc.net/problem/2343 문제 해결 TIP개인적으로 이분 탐색 알고리즘을 어떻게 적용할지 생각해내기 어려웠던 문제..(문제 이해도 한번에 안되었다.)그래서 풀이과정을 자세히 써보려 한다. 1. 이분탐색의 처음(start)과 끝(end) 구하기우선 이 문제의 요점은 '블루레이(디스크)의 크기'를 구하는 문제이다. 그렇다면 크기에 초점을 두어 이분 탐색을 적용해보자.우선 예제에서 강의의 길이가 제일 긴 것은 9분짜리 영상이다. 그렇다면 블루레이(디스크) 용량이 최소한 9분 이상은 저장할 수 있어야 모든 강의를 정상적으로 저장할 수 있을 것이다.그렇다면 최대는 어떻게 될까? 바로 모든 강의를 하나의 블루레이(디스크)에 저장했을 때이다. 1부터 9까.. 2025. 1. 16.
99클럽 코테 스터디 3일차 TIL + 백준 11663 선분 위의 점 (파이썬) ※ 11663 선분 위의 점https://www.acmicpc.net/problem/11663문제 해결 TIP이분 탐색 변형 문제이다. 처음에 for문으로 돌렸을 때는 역시 시간 초과..아래 입력 함수도 유용하게 써야겠다.import sysN, M = map(int,sys.stdin.readline().split())dot = list(map(int,sys.stdin.readline().split())) 전체 코드import sysN, M = map(int,sys.stdin.readline().split())dot = list(map(int,sys.stdin.readline().split()))dot.sort()def dot_min(start_dot): start = 0 end = N - 1 .. 2025. 1. 15.
99클럽 코테 스터디 2일차 TIL + 백준 1654 랜선 자르기 (파이썬) ※ 1654 랜선 자르기https://www.acmicpc.net/problem/1654문제 해결 TIP처음에 반복문으로 max(랜선길이)까지 탐색하다가 시간 초과 이슈 발생..이분 탐색으로 바꿨더니 성공했다. 전체 코드K, N = map(int,input().split())length = []for i in range(K): length.append(int(input()))start = 1end = max(length)while start = N: start = mid + 1 else: end = mid - 1print(end)비기너 문제 : 그대로 출력하기 2 https://www.acmicpc.net/problem/11719미들러 문제 : 랜선 자르기 https:.. 2025. 1. 14.
99클럽 코테 스터디 1일차 TIL + 백준 2776 암기왕 (파이썬) ※ 2776 암기왕https://www.acmicpc.net/problem/2776  문제 해결 TIP처음에는 수첩 1과 수첩 2를 리스트 형태에 저장하여 풀었지만, 시간 초과 문제가 발생하였다. 이후 in 연산자의 시간 복잡도를 줄여주는 set 를 수첩 1에 사용하여 중복 제거와 비교 연산을 효율적으로 해주었다. 전체 코드T = int(input())for i in range(T): N = int(input()) set_N = set(list(map(int,input().split()))) M = int(input()) list_M = list(map(int,input().split())) for j in list_M: if j in set_N: .. 2025. 1. 13.