728x90

python 그리디 알고리즘 2

[백준/BOJ] diamond5 - 18185번 라면 사기 (Small) (Python)

▶18185 - 라면 사기 (Small) ▶문제 라면마니아 교준이네 집 주변에는 N개의 라면 공장이 있다. 각 공장은 1번부터 N번까지 차례대로 번호가 부여되어 있다. 교준이는 i번 공장에서 정확하게 Ai개의 라면을 구매하고자 한다(1 ≤ i ≤ N). 교준이는 아래의 세 가지 방법으로 라면을 구매할 수 있다. i번 공장에서 라면을 하나 구매한다(1 ≤ i ≤ N). 이 경우 비용은 3원이 든다. i번 공장과 (i+1)번 공장에서 각각 라면을 하나씩 구매한다(1 ≤ i ≤ N-1). 이 경우 비용은 5원이 든다. i번 공장과 (i+1)번 공장, (i+2)번 공장에서 각각 라면을 하나씩 구매한다(1 ≤ i ≤ N-2). 이 경우 비용은 7원이 든다. 최소의 비용으로 라면을 구매하고자 할 때, 교준이가 필요..

BOJ Code/Diamond 2023.07.20

[백준/BOJ] gold5 - 1083번 소트 (Python)

▶1083 - 소트 ▶문제 크기가 N인 배열 A가 있다. 배열에 있는 모든 수는 서로 다르다. 이 배열을 정렬할 때, 연속된 두 개의 원소만 교환할 수 있다. 그리고, 교환은 많아봐야 S번 할 수 있다. 이때, 정렬한 결과가 사전순으로 가장 뒷서는 것을 출력한다. ▶입력 첫째 줄에 N이 주어진다. N은 50보다 작거나 같은 자연수이다. 둘째 줄에는 각 원소가 차례대로 주어진다. 이 값은 1000000보다 작거나 같은 자연수이다. 마지막 줄에는 S가 주어진다. S는 1000000보다 작거나 같은 음이 아닌 정수이다. ▶출력 첫째 줄에 문제의 정답을 출력한다. ▶풀이 최댓값을 찾아서 가장 왼쪽으로 넣어주는 방식을 사용하기로 했다. 최댓값이 들어간 가장 좌측 index는 고정시키는 방식이다. 일단 i번째부터 ..

BOJ Code/Gold 2023.07.14
728x90