📢 '이것이 코딩 테스트다 with 파이썬' 책을 공부하고 복습하기 위해 작성했습니다. 문제 동빈이의 큰 수의 법칙은 다양한 수로 이루어진 배열이 있을 때 주어진 수들을 M번 더하여 가장 큰 수를 만드는 법칙이다. 단, 배열의 특정한 인덱스(번호)에 해당하는 수가 연속해서 K번을 초과하여 더해질 수 없다. 서로 다른 인덱스에 해당하는 수가 같은 경우에도 서로 다른 것으로 간주한다. 배열의 크기 N, 숫자가 더해지는 횟수 M, 그리고 K가 주어질 때 동빈이의 큰 수의 법칙에 따른 결과를 출력한다. 입력 조건 첫째 줄에 N(2
728x90
PS/Algorithm-Python
728x90
반응형
📢 '이것이 코딩 테스트다 with 파이썬' 책을 공부하고 복습하기 위해 작성했습니다. 그리디(Greedy) 알고리즘 (탐욕법) 현재 상황에서 지금 당장 좋은 것만 고르는 방법 순간 가장 좋아 보이는 것을 선택하며, 현재의 선택이 나중에 미칠 영향에 대해서는 고려하지 않는다. 그리디 알고리즘은 기준에 따라 좋은 것을 선택하는 알고리즘이므로 문제에서 "가장 큰 순서대로", "가장 작은 순서대로"와 같은 기준을 알게 모르게 제시해 준다. 대체로 이 기준은 정렬 알고리즘을 사용했을 때 만족시킬 수 있으므로 그리디 알고리즘 문제는 주로 정렬 알고리즘과 짝을 이뤄 출제된다. [ 예제: 거스름돈 ] 거슬러 줄 수 있는 최소 동전의 수 # 거슬러 줘야 할 돈 N N = int(input()) # 동전 갯수 ans =..
📢 '이것이 코딩 테스트다 with 파이썬' 책을 공부하고 복습하기 위해 작성했습니다. 복잡도 복잡도(Complexity): 알고리즘의 성능을 나타내는 척도 동일한 기능을 수행하는 알고리즘이 있다면 일반적으로 복잡도가 낮을수록 좋은 알고리즘 시간 복잡도(Time Complexity) 알고리즘을 위해 필요한 연산의 횟수 특정한 크기의 입력에 대하여 알고리즘이 얼마나 오래 걸리는지 공간 복잡도(Space Complexity) 알고리즘을 위해 필요한 메모리의 양 특정한 크기의 입력에 대하여 알고리즘이 얼마나 많은 메모리를 차지하는지 시간 복잡도 (Time Complexity) 시간 복잡도를 표현할 때는 빅오(Big-O) 표기법을 사용한다. 빅오 표기법은 간단하게 가장 빠르게 증가하는 항만 고려하는 표기법이다...