728x90
반응형
SMALL

그리디 33

[Python] 1541번 잃어버린 괄호

✏️ 문제 문제 파악- 기호를 기준으로 나누어서 나눈 값끼리 다 더해주면 - 기호와 붙었을 때 최대로 빼게 되므로 split() 함수를 통해 - 기호를 기준으로 나누어준다.  예제1 같은 경우 + 기호 때문에 숫자 배열에 넣을 수 없으므로 배열에 집어넣으면 ['55', '50+40'] 와 같이 되는데 문자열 내에 + 기호가 있으면 + 기호를 기준으로 나누어 숫자로 타입을 바꾼 후 두 개의 합을 배열에 다시 넣어주고문자열 내에 + 기호가 없으면 그냥 숫자로 타입을 바꾼 후 배열에 다시 넣어준다. 그 후 배열[0] 값에서 뒷 배열의 값을 전부 빼주면 된다. 알고리즘수학그리디 알고리즘문자열파싱  코드str1 = input().split('-')for i in range(len(str1)): if '+' in..

PS/BOJ 2024.07.14

[Python] 2217번 로프

✏️ 문제 문제 파악로프가 버틸 수 있는 중량을 내림차순으로 정렬하면 뒤에 있는 중량은 앞에 있는 중량까지 들 수 없으므로 뒤에 있는 중량을 기준으로 최대 중량을 계산하게 된다. 예제1과 같은 경우 로프가 2개가 있는데 각각 최대 10, 15 중량을 버틸 수 있다.로프 1개만 사용한다면 최대 15만 버틸 수 있는데 로프 2개를 사용한다면 각각 10, 10(최대 15를 들 수 있는 로프를 10까지만 사용하게 됨)으로 최대 20을 버틸 수 있게 된다. 알고리즘수학그리디 알고리즘정렬  코드N = int(input())m = []for i in range(N): m.append(int(input()))m.sort(reverse=True)result = []for j in range(N): result.app..

PS/BOJ 2024.07.14
728x90
반응형
LIST