728x90
https://www.acmicpc.net/problem/2283
n, k = map(int, input().split())
array = [0] * 1000002 # 1 ~ 100001 까지 저장
for i in range(n):
a, b = map(int, input().split())
array[a+1] += 1
array[b+1] -= 1
for i in range(1, 1000002):
array[i] += array[i-1]
flag = False
left = 0
right = 0
t = 0
while True:
if t < k:
right += 1
t += array[right]
elif t > k:
left += 1
t -= array[left]
else:
flag = True
break
if right == 1000001:
break
if flag:
print(left, right)
else:
print(0, 0)
728x90
'Algorithm (PS)' 카테고리의 다른 글
[백준] 12865 평범한 배낭 Python (0) | 2023.01.22 |
---|---|
[알고리즘] 10942번: 팰린드롬? Python 풀이 (1) | 2023.01.20 |
[백준] 14925번: 목장 건설하기 Python - DP (0) | 2023.01.15 |
[백준] 15486번: 퇴사 2 (0) | 2023.01.14 |
[프로그래머스] 이모티콘 할인행사 Python (0) | 2023.01.13 |