ν°μ€ν 리 λ·°
λ¬Έμ
λ¬Έμ νμ΄
μμ κ·Έλ¦Όκ³Ό κ°μ΄ μμ μ λ ₯ 1μ κ²½μ°, μ΅μλ‘ νμν κ°μμ€ κ°μκ° 2κ°μμ μ μ μλ€. μ΄λ₯Ό κ³μ°νλ λ°©λ²μ μ΄λ ΅κ² μκ°ν νμ μμ΄, κ°μ μμ μκ°μ νμν κ°μμ€ μλ₯Ό μ¦κ°μν€κ³ , κ°μκ° λλλ©΄ νμν κ°μμ€ μλ₯Ό κ°μμν¨λ€. μ΄λ, κ°μμ€ μμ μ΅λ κ°μ ꡬνλ©΄ νμν μ΅μ κ°μμ€ μλ₯Ό ꡬν μ μλ€.
λ¬Έμ λ₯Ό νκΈ° μν΄μ μ£Όμν μ μ΄λΌλ©΄, μ λ ₯λλ κ°μ μμ λ μκ°μ μμμΈ κ²½μ°λ +1, λμΈ κ²½μ°λ -1κ³Ό κ°μ΄ μ§μ μ§μ΄ λ°λ‘ ꡬμ±νλ€. κ·Έ ν, μ λ ¬μ ν λ 2κ°μ§ κΈ°μ€μΌλ‘ μ λ ¬μ μ§ννμ¬μΌ νλλ° μ²« λ²μ§Έλ μκ°, λ λ²μ§Έλ +1μΈμ§, -1μΈμ§λ₯Ό κΈ°μ€μΌλ‘ μ λ ¬νμ¬μΌ νλ€. (-1μΈ κ²½μ°λ₯Ό λ¨Όμ μ²λ¦¬νμ¬μΌ μ΅μ νμμ€μ κ°μλ₯Ό ꡬν μ μλ€.)
μ½λ
from sys import stdin
if __name__ == "__main__":
answer = 0
N = int(stdin.readline())
cnt = 0
meeting = [0 for _ in range(N * 2)]
idx = 0
for start, end in [list(map(int, stdin.readline().split())) for _ in range(N)]:
meeting[idx] = [start, 1]
meeting[idx + 1] = [end, -1]
idx += 2
meeting.sort(key=lambda x: (x[0], x[1]))
for _, state in meeting:
cnt += state
answer = max(answer, cnt)
print(answer)
μ΄μ λμΌν μ½λλ‘ 19598: μ΅μ νμμ€ κ°μλ ν μ μλ€.
'π¨βπ» μ½λ©ν μ€νΈ > λ°±μ€' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
λ°±μ€: 8980 νλ°° (0) | 2021.03.19 |
---|---|
λ°±μ€: 2141 μ°μ²΄κ΅ (0) | 2021.03.19 |
λ°±μ€: 16953 A β B (0) | 2021.03.15 |
λ°±μ€: 2800 κ΄νΈ μ κ±° (0) | 2021.03.12 |
λ°±μ€: 2504 κ΄νΈμ κ° (0) | 2021.03.12 |