Python

    [이것이 코딩 테스트다 with Python] 두 배열의 원소 교체

    교재 : 이것이 코딩 테스트다 with 파이썬 CHAPTER 6 정렬 실전문제 6-3 두 배열의 원소 교체 182p 문제 동빈이는 두 개의 배열 A와 B를 가지고 있다. 두 배열은 N개의 원소로 구성되어 있으며, 배열의 원소는 모두 자연수이다 동빈이는 최대 K 번의 바꿔치기 연산을 수행할 수 있는데, 바꿔치기 연산이란 배열 A에 있는 원소 하나와 배열 B에 있는 원소 하나를 골라서 두 원소를 서로 바꾸는 것을 말한다 동빈이의 최종 목표는 배열 A의 모든 원소의 합이 최대가 되도록 하는 것이며, 여러분은 동빈이를 도와야한다 N, K, 그리고 배열 A와 B의 정보가 주어졌을 때, 최대 K 번의 바꿔치기 연산을 수행하여 만들 수 있는 배열 A의 모든 원소의 합의 최댓값을 출력하는 프로그램을 작성하라 예를 들어..

    [이것이 코딩 테스트다 with Python] 떡볶이 떡 만들기 : 이진 탐색

    교재 : 이것이 코딩 테스트다 with 파이썬 CHAPTER 7 이진 탐색 실전문제 7-2 떡볶이 떡 만들기 201p 문제 오늘 동빈이는 여행 가신 부모님을 대신해서 떡집 일을 하기로 했다. 오늘은 떡볶이 떡을 만드는 날이다. 동빈이네 떡볶이 떡은 재밌게도 떡볶이 떡의 길이가 일정하지 않다. 대신에 한 봉지 안에 들어가는 떡의 총 길이는 절단기로 잘라서 맞춰준다. 절단기의 높이(H)를 지정하면 줄지어진 떡을 한 번에 절단한다. 높이가 H보다 긴 떡은 H 위의 부분이 잘릴 것이고, 낮은 떡은 잘리지 않는다. 이걸 처리 안 해줘서 시간을 허비했다. 예를 들어 높이가 19, 14, 10, 17cm인 떡이 나란히 있고 절단기 높이를 15cm로 지정하면 자른 뒤 떡의 높이는 15, 14, 10, 15cm가 될 것..

    [이것이 코딩 테스트다 with Python] 부품 찾기 : 이진 탐색

    교재 : 이것이 코딩 테스트다 with 파이썬 CHAPTER 7 이진 탐색 실전문제 7-2 부품 찾기 197p 문제 동빈이네 전자 매장에는 부품이 N개 있다. 각 부품은 정수 형태의 고유한 번호가 있다. 어느 날 손님이 M개의 종류의 부품을 대량으로 구매하겠다며 당일 날 견적서를 요청했다. 동빈이는 때를 놓치지 않고 손님이 문의한 부품 M개 종류를 모두 확인해서 견적서를 작성해야 한다. 이때 가게 안에 부품이 모두 있는지 확인하는 프로그램을 작성해보자. 예를 들어 가게의 부품이 총 5개일 때 부품 번호가 다음과 같다고 하자. N=5 [8, 3, 7, 9, 2] 손님은 총 3개의 부품이 있는지 확인 요청했는데 부품 번호는 다음과 같다. M=3 [5, 7, 9] 이때 손님이 요청한 부품 번호의 순서대로 부품..

    [이것이 코딩 테스트다 with Python] 이진탐색

    교재 : 이것이 코딩 테스트다 with 파이썬 CHAPTER 7 이진 탐색 실전문제 7-1 이진 탐색 189 문제 주어진 입력값에 대해서 이진탐색 진행해 인덱스를 출력하자 입력 조건 숫자의 갯수와 찾아야 할 숫자를 입력받고 다음줄에서 숫자 배열을 입력받는다 출력 조건 찾은 곳은 인덱스를 출력하고 없다면 원소가 존재하지 않는다는 문구를 출력한다 입력 예시 1 10 7 1 3 5 7 9 11 13 15 17 19 출력 예시 1 4 입력 예시 2 10 7 1 3 5 6 9 11 13 15 17 19 출력 예시 2 원소가 존재하지 않습니다. ✔ Solution - 재귀함수 def binary_search(array, target, start, end): if start > end: return None # 중간..