[Coding Test]

    [백준] 1158 파이썬(python) : 요세푸스 문제

    [백준] 1158 파이썬(python) : 요세푸스 문제

    1158번: 요세푸스 문제  import sysfrom collections import dequen, k = map(int, sys.stdin.readline().split())circle = [ str(i) for i in range(1, n+1) ] #1ans = deque()circle_len, idx, ans = n, 0, [] #2while len(circle) != 0: #3 idx += (k-1) #4 ans.append(circle.pop(idx % circle_len)) #5 idx %= circle_len #6 circle_len -= 1 #7tmp = ', '.join(ans)print(f'') #8 #1 : 리스트를 1부터 n까지 채워준다#2 : 리스트가 하나..

    [백준] 2109 파이썬(python) : 순회강연 -(추가예시)

    [백준] 2109 파이썬(python) : 순회강연 -(추가예시)

    https://www.acmicpc.net/problem/2109 2109번: 순회강연 한 저명한 학자에게 n(0 ≤ n ≤ 10,000)개의 대학에서 강연 요청을 해 왔다. 각 대학에서는 d(1 ≤ d ≤ 10,000)일 안에 와서 강연을 해 주면 p(1 ≤ p ≤ 10,000)만큼의 강연료를 지불하겠다고 알려왔다. www.acmicpc.net import sys, heapq n = int(sys.stdin.readline()) lecture = [ list(map(int, sys.stdin.readline().split())) for _ in range(n) ] lecture.sort(key=lambda x : x[1]) #1 heap = [] for i in lecture: #2 heapq.heap..

    [백준] 1202 파이썬(python) : 보석 도둑 - 이중heap

    [백준] 1202 파이썬(python) : 보석 도둑 - 이중heap

    https://www.acmicpc.net/problem/1202 1202번: 보석 도둑 첫째 줄에 N과 K가 주어진다. (1 ≤ N, K ≤ 300,000) 다음 N개 줄에는 각 보석의 정보 Mi와 Vi가 주어진다. (0 ≤ Mi, Vi ≤ 1,000,000) 다음 K개 줄에는 가방에 담을 수 있는 최대 무게 Ci가 주어진다. (1 ≤ Ci www.acmicpc.net import sys, heapq n, k = map(int, sys.stdin.readline().split()) jewel = [] for _ in range(n): heapq.heappush(jewel, list(map(int, sys.stdin.readline().split()))) #1 bags = [ int(sys.stdin.r..

    [백준] 7662 파이썬(python) : 이중 우선순위 큐 - 이중 큐 동기화

    [백준] 7662 파이썬(python) : 이중 우선순위 큐 - 이중 큐 동기화

    https://www.acmicpc.net/problem/7662 7662번: 이중 우선순위 큐 입력 데이터는 표준입력을 사용한다. 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터의 첫째 줄에는 Q에 적 www.acmicpc.net 처음엔 heap을 하나 생성해서 최대일때는 어떻게 빼주면 좋을까 고민하다가 해법이 떠오르지 않아 블로그를 찾아봤는데 이중heap을 만드는걸 보고 놀랐다. 동시에 입력을 받고 동기화를 True, False의 형태로 받아주는것인데 대단한 방법이다. import sys, heapq t = int(sys.stdin.readline()) for _ in range(t): k = int(sys.stdin..

    [백준] 11000 파이썬(python) : 강의실 배정

    [백준] 11000 파이썬(python) : 강의실 배정

    https://www.acmicpc.net/problem/11000 11000번: 강의실 배정 첫 번째 줄에 N이 주어진다. (1 ≤ N ≤ 200,000) 이후 N개의 줄에 Si, Ti가 주어진다. (0 ≤ Si < Ti ≤ 109) www.acmicpc.net 처음에 문제를 잘못 이해했다. 같은 강의실에서 다른 강의실 할 수 있는 줄 모르고 내 학기중 수업 들었던것만 생각해서 수업이 끝나면 바로 다른곳으로 이동해야하는 줄 알고 이전 수업 끝나는 시간 t가 다음 수업 시작하는 시간 s가 같거나 작으면 heap에 추가해주는줄 알았다. 그래서 처음 제출은 실패. 그렇게 이해하면 우선순위 큐를 사용할 일도 없다. 뭔가 이상해서 블로그를 찾아보니 수업시간이 겹치는 강의가 생기면 그때 강의실을 추가해주는거였다...

    [백준] 5619 파이썬(python) : 세 번째 - 메모리 줄이는 법

    [백준] 5619 파이썬(python) : 세 번째 - 메모리 줄이는 법

    https://www.acmicpc.net/problem/5619 5619번: 세 번째 서로 다른 자연수 n개 a1, a2, ..., an이 주어진다. 이때, a1, ... an에서 2개를 선택해서 붙여서 새로운 수를 만들 수 있다. 이때, 세 번째로 작은 수를 구하는 프로그램을 작성하시오. 예를 들어, 3과 4 www.acmicpc.net 일본 대회가 출처로 적혀있다. itertools에서 permutations 사용했는데 테스트 케이스는 맞고 채점에서는 메모리 초과가 나와서 틀렸다. 순열은 모든 경우를 다 따져주니까 그런것 같다. 메모리 초과 나온 코드) import sys, itertools n = int(sys.stdin.readline()) arr = [ int(sys.stdin.readline..