분류 전체보기154 [Python] 백준 13975: 파일 합치기 3 https://www.acmicpc.net/problem/13975 13975번: 파일 합치기 3 프로그램은 표준 입력에서 입력 데이터를 받는다. 프로그램의 입력은 T개의 테스트 데이터로 이루어져 있는데, T는 입력의 맨 첫 줄에 주어진다.각 테스트 데이터는 두 개의 행으로 주어지는데, www.acmicpc.net 1. 파일은 어차피 n-1번 합쳐야 한다. 2. 그러므로 가장 작은 파일 2개씩 파일이 1개가 남을 때까지 더해주면 된다. from heapq import heappush, heappop, heapify T = int(input()) while T: T -= 1 n = int(input()) f = list(map(int, input().split())) ans = 0 heapify(f) wh.. 2021. 9. 26. [Python] 백준 2513: 통학버스 https://www.acmicpc.net/problem/2513 2513번: 통학버스 첫째 줄에는 세 개의 양의 정수 N, K, S가 빈칸을 사이에 두고 순서대로 주어진다. 첫 번째 정수 N은 아파트 단지의 수이며 2 ≤ N ≤ 30,000이다. 두 번째 정수 K는 1 ≤ K ≤ 2,000이며, 통학버스의 정원 www.acmicpc.net 1. 학교를 기준으로 왼쪽 오른쪽을 나누어준다. (어차피 학교로 다시 돌아오면 현재 버스 인원이 0명이 되기 때문) 2. 최대힙을 이용하여 거리가 먼순으로 버스에 태운다. (가까운 곳을 우선으로 하면 1 번가 야할 먼 곳을 2번 갈경우도 생기기때문) 3. 현재 버스 인원 + 다음에 가야 할 아파트 인원이 최대를 넘을 경우 학교에 내려다 주고 다시 간다. from he.. 2021. 9. 25. [Python] 백준 1082: 방 번호 https://www.acmicpc.net/problem/1082 1082번: 방 번호 스타트링크가 입주한 사무실은 방 번호를 직접 정할 수 있다. 방 번호를 정하려면 1층 문방구에서 파는 숫자를 구매해야 한다. 숫자를 구매하기 위해 준비한 금액은 M원이고, M원을 모두 사용해 www.acmicpc.net 1. 가장 큰 방 번호를 출력하므로 뒤에서부터 dp를 시작한다. 2. 현재 값, 현재 인덱스 값(현재 dp가 무한일 수도 있기 때문), 전의 값 * 10 + 현재 값 중 가장 큰 값을 넣는다. INF = 5001 n = int(input()) room = list(map(int, input().split())) m = int(input()) dp = [-INF for _ in range(m+1)] fo.. 2021. 9. 25. [Python] 백준 1083: 소트 https://www.acmicpc.net/problem/1083 1083번: 소트 크기가 N인 배열 A가 있다. 배열에 있는 모든 수는 서로 다르다. 이 배열을 소트할 때, 연속된 두 개의 원소만 교환할 수 있다. 그리고, 교환은 많아봐야 S번 할 수 있다. 이때, 소트한 결과가 사전 www.acmicpc.net 1. 사전 반대 순이라는 말은 리스트를 큰 순서대로 나열하는 것이다. 2. 현재 인덱스를 기준으로 뒤에 가장 큰 값을 비교한다. 3. 남은 횟수가 더이상 없으면 종료한다. S는 1000000보다 작거나 같은 음이 아닌 정수이다.라는 조건이 있는데 이 조건은 횟수가 0일 수도 있다는 것이다. 이것 때문에 틀렸다가 바로 정정했다. n = int(input()) lst = list(map(int, .. 2021. 9. 25. 이전 1 ··· 31 32 33 34 35 36 37 ··· 39 다음