๋ฌธ์
https://www.acmicpc.net/problem/1946
1946๋ฒ: ์ ์ ์ฌ์
์ฒซ์งธ ์ค์๋ ํ ์คํธ ์ผ์ด์ค์ ๊ฐ์ T(1 ≤ T ≤ 20)๊ฐ ์ฃผ์ด์ง๋ค. ๊ฐ ํ ์คํธ ์ผ์ด์ค์ ์ฒซ์งธ ์ค์ ์ง์์์ ์ซ์ N(1 ≤ N ≤ 100,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ N๊ฐ ์ค์๋ ๊ฐ๊ฐ์ ์ง์์์ ์๋ฅ์ฌ์ฌ ์ฑ
www.acmicpc.net
ํ์ด
# ๋ฐฑ์ค 1946๋ฒ ๋ฌธ์ - ์ ์
์ฌ์
from collections import deque
import sys
input = sys.stdin.readline
t = int(input())
for _ in range(t):
n = int(input())
arr = []
for _ in range(n):
a, b = map(int, input().split())
arr.append((a,b))
arr.sort(key = lambda x: x[0])
res = arr[0][1]
cnt = 1 # ์ฒซ๋ฒ์งธ๋ ๋ฌด์กฐ๊ฑด ์ฌ์์ผ๋ก ๋ฝํ๊ธฐ ๋๋ฌธ์ 1๋ถํฐ ์์
for compare in arr:
if res > compare[1]:
cnt += 1
res = compare[1]
print(cnt)
์ฒ์์ ์๋ฌด ์๊ฐ์์ด res = min(res, compare[1]) ์ ์ ์ฉํ๋ค๊ฐ ์๊ฐ์ด๊ณผ๊ฐ ๋ฐ์ํ์๋ค.
min์ ์๊ฐ๋ณต์ก๋๊ฐ O(n)์ธ๋ฐ for๋ฌธ ์์ ์์ด์ ์๊ฐ๋ณต์ก๋๊ฐ O(n^2)์ผ๋ก ๋์ด๋ ๊ฒ์ด๋ค.
๊ทธ๋์ ์ฝ๋๋ฅผ ๋ฐ๊ฟ์คฌ๋๋ฐ ๊ทธ๋๋ ์๊ฐ์ด๊ณผ๊ฐ ๋ฐ์ํ์ฌ ์ฑ์ ์ ์ ๋ ฅ๋ฐ์ ๋ sys๋ฅผ ์ฌ์ฉํ์ฌ ํด๊ฒฐํ์๋ค.
'๐๏ธ Algorithm > ๐ฉ ๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๐ฉ [๋ฐฑ์ค] [Python] [Class4] 12852๋ฒ_1๋ก ๋ง๋ค๊ธฐ 2 (0) | 2022.11.19 |
---|---|
๐ฉ [๋ฐฑ์ค] [Python] 16953๋ฒ_A->B (0) | 2022.11.19 |
๐ฉ [๋ฐฑ์ค] [Python] [ํ] 16927๋ฒ_๋ฑ๊ณผ ์ฌ๋ค๋ฆฌ ๊ฒ์ (0) | 2022.11.18 |
๐ฉ [๋ฐฑ์ค] [Python] [BFS/DFS] 2583๋ฒ_์์ญ ๊ตฌํ๊ธฐ (0) | 2022.11.17 |
๐ฉ [๋ฐฑ์ค] [Python] [BFS/DFS] 2644๋ฒ_์ด์๊ณ์ฐ (0) | 2022.11.17 |