반응형
Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

꿈과 열정

백준1931 파이썬 : 회의실 배정 본문

알고리즘 문제풀이

백준1931 파이썬 : 회의실 배정

dolchimdae 2022. 3. 16. 23:57
반응형

https://www.acmicpc.net/problem/1931

 

1931번: 회의실 배정

(1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다.

www.acmicpc.net

<소스 코드>

N = int(input())
data = []

for i in range(N):
  a,b = map(int,input().split())
  data.append((a,b))

result = 0
now = 0

data.sort(key=lambda x: (x[1],x[0]))

for i in range(N):
  if data[i][0] >= now:
    now = data[i][1]
    result += 1 

print(result)

입력 받은 data 를 1. 끝나는 시각 2. 시작하는 시각 순위로 오름차순으로 정렬하는 게 포인트.

시작하는 시각으로 정렬하는 것까지 고려하지 않아 오백번 틀렸다.

sort()에서 key lamda 를 이용해 간단히 작성할 수 있었다.

아래는 작성 예시.

data.sort(key= lamda x: (-x[0],x[1]))
# x의 0번째 인자 기준 내림차순으로 먼저 정렬한 다음, 1번째 인자 오름차순으로 정렬

 

반응형
Comments