728x90 반응형 알고리즘109 [백준] 1541번: 잃어버린 괄호 - python https://www.acmicpc.net/problem/1541 1541번: 잃어버린 괄호 첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다 www.acmicpc.net 사실 처음에 이게 어떻게 -35가 되는지 의문이었다. 55-50+40 55-5(0+40) = -145가 아닌가.. 라는 식으로 창의력 테스트하다가 단순히 분리하면 된다는 사실을 파악하고 코드를 작성했다. 우선 -를 제일 나중에 하는게 최소값을 찾을 수 있어서 먼저 - 기준으로 분리를 진행하였다. 배열에는 +가 들어가있는 집합으로 나눠지게 되겠고, 이제 각자 집합을 last라는 리스트를 생성해.. 2024. 3. 27. [백준] 1931번: 회의실 배정 - python https://www.acmicpc.net/problem/1931 1931번: 회의실 배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net 최대한 방을 사용할 수 있게 정렬하는 문제 일단 끝나는 순으로 정렬을 한다. 그 이유는 아무리 일찍하더라도 죽치고 사용하면 배정할때 후순위로 밀리기 때문에 일단 가장 일찍 끝나는 순으로 정렬을 한다. 그 후 순서대로 비교하면서 끝나는 시간과 그 다음 타임의 시작하는 시간이 같거나 크면 사용이 가능하므로 tmp라는 빈공간을 생성해 그 값을 계속 저장하면서 갯수를 증가시켜준다. 그러면 최대한 많이 사용하는 경우의 수가 나오게 된다. n = int(input()) arr = [] for i in range(n): st.. 2024. 3. 27. [백준] 9657번: 돌 게임 3 - python https://www.acmicpc.net/problem/9657 9657번: 돌 게임 3 상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다. www.acmicpc.net 저번에 처음 돌 게임 1을 푼 기억이 생각났다. 확실히 업그레이드가 되었다. 가지치기를 하면 훨씬 빠르지만 게을러서 그냥 제출헀다. n = int(input()) dp = [0] * 1001 #0은 상근 1은 창영으로 설정 dp[1] = 0 dp[2] = 1 dp[3] = 0 dp[4] = 0 dp[5] = 0 dp[6] = 0 # 4 1 1 dp[7] = 1 # 1 4 1 1 for i in range(8, 1001): if dp[i-1] == 1 or dp[i-3] == 1 or dp[i-4] == 1: dp[.. 2024. 3. 27. [백준] 2583번: 영역 구하기 - python https://www.acmicpc.net/problem/2583 2583번: 영역 구하기 첫째 줄에 M과 N, 그리고 K가 빈칸을 사이에 두고 차례로 주어진다. M, N, K는 모두 100 이하의 자연수이다. 둘째 줄부터 K개의 줄에는 한 줄에 하나씩 직사각형의 왼쪽 아래 꼭짓점의 x, y좌표값과 오 www.acmicpc.net 좌표 설정하는데 미로찾기처럼 위에서부터 0인줄알고 했다가 다시 읽어보니 거꾸로 되어있었어서 햇갈렷던 문제; 좌표를 색칠한 후에 나머지를 1로 모조리 칠해버리는 식으로 코드를 구현햇다. 만약 0이면 색칠 -> sum, cnt 증가 후 마지막에 정렬 후 출력 sum = 0이면 1로 한 이유는 파고 들어가야지만 넓이가 증가되어 기본 첫번째 진입일때도 넓이가 1로 카운트 되게 설정하였.. 2024. 3. 27. 이전 1 ··· 19 20 21 22 23 24 25 ··· 28 다음 728x90 반응형