나동빈 3

[이코테] 금광

출처 - 이것이 취업을 위한 코딩테스트다 with 파이썬 금광 📌 문제 n X m 크기의 금광이 있다. 금광은 1 X 1 크기의 칸으로 나누어져 있으며, 각 칸은 특정한 크기의 금이 들어 있다. 채굴자는 첫 번째 열부터 출발하여 금을 캐기 시작한다. 맨 처음에는 첫 번째 열의 어느 행에서든 출발할 수 있다. 이후에 m번에 걸쳐서 매번 오른쪽 위, 오른쪽, 오른쪽 아래 3가지 중 하나의 위치로 이동해야 한다. 결과적으로 채굴자가 얻을 수 있는 금의 최대 크기를 출력하는 프로그램을 작성하라. 📋 코드 T = int(input()) for _ in range(T): N, M = map(int, input().split()) tmp = list(map(int, input().split())) gold = [] ..

[이코테] 고정점 찾기

출처 - 이것이 취업을 위한 코딩테스트다 with 파이썬 고정점 찾기 📌 문제 고정점이란, 수열의 원소 중에서 그 값이 인덱스와 동일한 원소를 의미한다. 예를 들어 수열 a = {-15, -4, 2, 8, 13}이 있을 때 a[2] = 2이므로, 고정점은 2가 된다. 하나의 수열이 N개의 서로 다른 원소를 포함하고 있으며, 모든 원소가 오름차순으로 정렬되어 있다. 이때 이 수열에서 고정점이 있다면, 고정점을 출력하는 프로그램을 작성하라. 만약 고정점이 없다면 -1을 출력한다. 단, 이 문제는 시간 복잡도 O(logN) 으로 알고리즘을 설계하지 않으면 '시간 초과' 판정을 받는다. 📋 코드 def binary_search(arr, start, end): if start > end: return -1 mid..

[이코테] 정렬된 배열에서 특정 수의 개수 구하기

출처 - 이것이 취업을 위한 코딩테스트다 with 파이썬 정렬된 배열에서 특정 수의 개수 구하기 📌 문제 N개의 원소를 포함하고 있는 수열이 오름차순으로 정렬되어 있다. 이때 이 수열에서 x가 등장하는 횟수를 계산하세요. 예를 들어 수열 [1, 1, 2, 2, 2 ,2 ,3]이 있을 때 x = 2라면, 현재 수열에서 값이 2인 원소가 4개이므로 4를 출력한다. 단, 이 문제는 시간 복잡도 O(logN) 으로 알고리즘을 설계하지 않으면 '시간 초과' 판정을 받는다. 📋 코드 from bisect import bisect_left, bisect_right N, x = map(int, input().split()) arr = list(map(int, input().split())) left, right = b..