그리디 알고리즘

프로그래머스 데브코스/TIL

TIL Day - 6

프로그래머스 데브코스 프론트엔드 3기 ✓ TIL DAY - 6 🗓오늘은... 2주차가 시작되었다. 오늘 학습은 코어타임 시작과 함께 팀원들과 스크럼 이후에 진행했다. 학습을 시작하기 전에 스스로 계획을 하고 시작하는 편이지만 다른 분들의 계획을 듣고 부족한 부분을 보완하는 방식이 만족스럽다. 모든 팀원들이 주말에 과제를 미리 해와서 PR을 같이 해보는 게 어떠냐고 제안했고 모두들 동의했다. 처음으로 Pull Request를 작성해보기 도 하고 익숙하지 않은 제출 방식이라 화면을 공유하며 함께 컨벤션을 어느정도 확인하고 제출하게 되었다. PR을 연습해볼 수 있어서 이 방식이 복잡하지만 좋은 방식이라고 느꼈다. 또한 지난 주 풀이했던 두 문제를 다시 한번 풀이해보고 강의를 들었다. 그동안 부족하다고 느낀 B..

알고리즘

백준 13305번 주유소 파이썬 풀이

[Python] 백준 알고리즘 온라인 저지 13305 주유소 https://www.acmicpc.net/problem/13305 13305번: 주유소 표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 도시의 개수를 나타내는 정수 N(2 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 인접한 두 도시를 연결하는 도로의 길이가 제일 왼쪽 도로부터 N-1 www.acmicpc.net 한 방향(왼쪽에서 오른쪽)으로 도시를 이동해야 하므로 리터 당 가격을 비교하며 이동하는 방법으로 풀이했다. 요즘 기름 값이 비싸긴 하다... 알고리즘 분류 그리디 알고리즘 소스코드 import sys input = sys.stdin.readline n = int(input()) dist = list(map(int, inpu..

알고리즘

백준 1541번 잃어버린 괄호 파이썬 풀이

[Python] 백준 알고리즘 온라인 저지 1541 잃어버린 괄호 https://www.acmicpc.net/problem/1541 1541번: 잃어버린 괄호 첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다 www.acmicpc.net 괄호를 쳐서 최소가 되는 값을 구하기 위해서는 마이너스되는 값이 클수록 값은 작아지므로 -를 기준으로 문제를 풀이했다. 알고리즘 분류 수학 문자열 그리디 알고리즘 파싱 소스코드 import sys input = sys.stdin.readline exp = input().split("-") s = 0 # 마이너스가 나오기 전까지..

알고리즘

백준 11399번 ATM 파이썬 풀이

[Python] 백준 알고리즘 온라인 저지 11399 ATM https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net 알고리즘 분류 그리디 알고리즘 정렬 문제에서는 시간이 최소로 드는 방법을 요구하고 있다. 방법은 하나로 시간이 적게 드는 사람 순서대로 배치하는 것이다. 소스코드 import sys input = sys.stdin.readline n = int(input()) minutes = sorted(list(map(int, input().split()))) result = [..

알고리즘

백준 1931번 회의실 배정 파이썬 풀이

[Python] 백준 알고리즘 온라인 저지 1931 회의실 배정 https://www.acmicpc.net/problem/1931 1931번: 회의실 배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net 알고리즘 분류 정렬 그리디 알고리즘 알고리즘 분류와 같이 미리 정렬을 하고 풀이하는 것이 이 문제의 핵심이었다. 코드 import sys input = sys.stdin.readline n = int(input()) m = [] for _ in range(n): a, b = map(int, input().split()) m.append([a, b]) m.sort(key=lambda x: [x[1], x[0]]) cnt = 1 end_m = m[0][..

알고리즘

백준 11047번 동전 0 파이썬 풀이

[Python] 백준 알고리즘 온라인 저지 11047 동전 0 https://www.acmicpc.net/problem/11047 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) www.acmicpc.net 필요한 동전의 최솟값은 k보다 작은 가장 큰 화폐들을 사용하고 잔돈을 사용하면 최솟값을 구할 수 있다. 이 개념만 안다면 어렵지 않게 문제를 풀이할 수 있다. 코드 import sys input = sys.stdin.readline n, k = map(int, input(..

🚀 새로운 블로그로 이전했습니다.

살펴보러 가기
minjae_4
'그리디 알고리즘' 태그의 글 목록