J1Yun
ZU-TECHLOG
J1Yun
전체 방문자
였늘
μ–΄μ œ
  • πŸ“‘ Category (135)
    • Algorithm (61)
      • πŸ“š Concept (6)
      • πŸ“˜ Baekjoon Judge (53)
      • πŸ“— Programmers (2)
    • Computer Science (42)
      • πŸ”’ Operating System (14)
      • πŸ“‘ Network (15)
      • πŸ’Ύ Database (8)
      • 🧩 Design Pattern (4)
      • πŸ”‘ Security (1)
    • Activities (12)
      • 🦁 λ©‹μŸμ΄μ‚¬μžμ²˜λŸΌ 9κΈ° (6)
      • πŸ’» SWλ§ˆμ—μŠ€νŠΈλ‘œ 13κΈ° (6)
    • Infra (1)
      • ☁️ AWS (1)
    • Languages (1)
      • πŸ’™ Python (1)
    • Backend (7)
      • πŸ”΅ Django (4)
      • 🟒 Node.js (3)
    • Ect. (8)
      • πŸ’¬ Talk (0)
      • πŸ—‚οΈ 개발직ꡰ μ·¨μ—… μ€€λΉ„μžλ£Œ (8)

λΈ”λ‘œκ·Έ 메뉴

  • ν™ˆ
  • νƒœκ·Έ
  • λ°©λͺ…둝

곡지사항

인기 κΈ€

졜근 λŒ“κΈ€

졜근 κΈ€

ν‹°μŠ€ν† λ¦¬

250x250
hELLO Β· Designed By μ •μƒμš°.
J1Yun

ZU-TECHLOG

[BOJ] λ°±μ€€ 11000번 κ°•μ˜μ‹€ λ°°μ • - 파이썬(Python)
Algorithm/πŸ“˜ Baekjoon Judge

[BOJ] λ°±μ€€ 11000번 κ°•μ˜μ‹€ λ°°μ • - 파이썬(Python)

728x90

문제

μˆ˜κ°•μ‹ μ²­μ˜ λ§ˆμŠ€ν„° κΉ€μ’…ν˜œ μ„ μƒλ‹˜μ—κ²Œ μƒˆλ‘œμš΄ κ³Όμ œκ°€ μ£Όμ–΄μ‘Œλ‹€.

κΉ€μ’…ν˜œ μ„ μƒλ‹˜ν•œν…ŒλŠ” Si에 μ‹œμž‘ν•΄μ„œ Ti에 λλ‚˜λŠ” N개의 μˆ˜μ—…μ΄ μ£Όμ–΄μ§€λŠ”λ°, μ΅œμ†Œμ˜ κ°•μ˜μ‹€μ„ μ‚¬μš©ν•΄μ„œ λͺ¨λ“  μˆ˜μ—…μ„ κ°€λŠ₯ν•˜κ²Œ ν•΄μ•Ό ν•œλ‹€. 

참고둜, μˆ˜μ—…μ΄ λλ‚œ 직후에 λ‹€μŒ μˆ˜μ—…μ„ μ‹œμž‘ν•  수 μžˆλ‹€. (즉, Ti ≤ Sj μΌ 경우 i μˆ˜μ—…κ³Ό j μˆ˜μ—…μ€ 같이 듀을 수 μžˆλ‹€.)

μˆ˜κ°•μ‹ μ²­ λŒ€μΆ©ν•œ 게 찔리면, μ„ μƒλ‹˜μ„ λ„μ™€λ“œλ¦¬μž!

μž…λ ₯

첫 번째 쀄에 N이 μ£Όμ–΄μ§„λ‹€. (1 ≤ N ≤ 200,000)

이후 N개의 쀄에 Si, Tiκ°€ μ£Όμ–΄μ§„λ‹€. (0 ≤ Si < Ti ≤ 109)

좜λ ₯

κ°•μ˜μ‹€μ˜ 개수λ₯Ό 좜λ ₯ν•˜λΌ.

 

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

 

11000번: κ°•μ˜μ‹€ λ°°μ •

첫 번째 쀄에 N이 μ£Όμ–΄μ§„λ‹€. (1 ≤ N ≤ 200,000) 이후 N개의 쀄에 Si, Tiκ°€ μ£Όμ–΄μ§„λ‹€. (0 ≤ Si < Ti ≤ 109)

www.acmicpc.net

 

πŸ’‘ 풀이 및 μ½”λ“œ

import heapq
import sys
input = sys.stdin.readline

n = int(input())
array = []
for _ in range(n):
    array.append(tuple(map(int, input().split())))
array.sort(key=lambda x: x[0])

pq = []
heapq.heappush(pq, array[0][1])
for i in range(1, n):
    s = heapq.heappop(pq)
    if s <= array[i][0]:
        heapq.heappush(pq, array[i][1])
    else:
        heapq.heappush(pq, s)
        heapq.heappush(pq, array[i][1])

print(len(pq))

이전에 μš°μ„ μˆœμœ„ 큐λ₯Ό μ‚¬μš©ν• μ€„ λͺ°λΌ λ―Έν•΄κ²°λ‘œ λ‚¨κ²¨λ‘μ—ˆλ˜ λ¬Έμ œμ΄λ‹€.

μ‹œκ°„ μ œν•œμ„ λ§žμΆ”κΈ° μœ„ν•΄μ„œλŠ” μš°μ„ μˆœμœ„ 큐λ₯Ό μ‚¬μš©ν•΄μ•Ό ν•œλ‹€. 각각의 μˆ˜μ—…μ— λŒ€ν•˜μ—¬ μ‹œμž‘ μ‹œκ°„μ„ κΈ°μ€€μœΌλ‘œ μ •λ ¬ν•΄ 놓은 ν›„ μ’…λ£Œ μ‹œκ°„μ„ μš°μ„ μˆœμœ„ 큐인 pq에 ν‘Έμ‹œν•œλ‹€. μ΄λ•Œ, λ¨Όμ € heappop을 톡해 이전 μˆ˜μ—…λ“€ 쀑 κ°€μž₯ μž‘μ€ μ’…λ£Œ μ‹œκ°„μ„ κ΅¬ν•œ ν›„ ν˜„μž¬μ˜ μˆ˜μ—… μ‹œμž‘ μ‹œκ°„μ΄ ν•΄λ‹Ή μ’…λ£Œ μ‹œκ°„λ³΄λ‹€ ν¬κ±°λ‚˜ κ°™μœΌλ©΄ 같은 κ°•μ˜μ‹€μ— λ°°μ •ν•  수 μžˆμœΌλ―€λ‘œ ν˜„μž¬μ˜ μˆ˜μ—… μ’…λ£Œ μ‹œκ°„μ„ pq에 λŒ€μ‹  ν‘Έμ‹œν•œλ‹€. κ·Έλ ‡μ§€ μ•Šλ‹€λ©΄ μƒˆλ‘œμš΄ κ°•μ˜μ‹€μ΄ ν•„μš”ν•˜λ‹€λŠ” μ˜λ―Έμ΄λ―€λ‘œ pop으둜 λΉΌλ†¨λ˜ 이전 μˆ˜μ—…μ˜ μ’…λ£Œ μ‹œκ°„κ³Ό ν˜„μž¬ μˆ˜μ—…μ˜ μ’…λ£Œμ‹œκ°„μ„ ν•¨κ»˜ pq에 ν‘Έμ‹œν•œλ‹€. μ΅œμ’…μ μœΌλ‘œ pq의 길이가 κ°•μ˜μ‹€μ˜ μˆ˜κ°€ λœλ‹€.

728x90

'Algorithm > πŸ“˜ Baekjoon Judge' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

[BOJ] λ°±μ€€ 1238번 νŒŒν‹° - 파이썬(Python)  (0) 2022.01.19
[BOJ] λ°±μ€€ 1261번 μ•Œκ³ μŠ€νŒŸ - 파이썬(Python)  (0) 2022.01.19
[BOJ] λ°±μ€€ 2212번 μ„Όμ„œ - 파이썬(Python)  (0) 2022.01.10
[BOJ] λ°±μ€€ 15686번 μΉ˜ν‚¨ 배달 - 파이썬(Python)  (0) 2022.01.07
[BOJ] λ°±μ€€ 14503번 λ‘œλ΄‡ μ²­μ†ŒκΈ° - 파이썬(Python)  (1) 2022.01.07
    'Algorithm/πŸ“˜ Baekjoon Judge' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ 글이닀
    • [BOJ] λ°±μ€€ 1238번 νŒŒν‹° - 파이썬(Python)
    • [BOJ] λ°±μ€€ 1261번 μ•Œκ³ μŠ€νŒŸ - 파이썬(Python)
    • [BOJ] λ°±μ€€ 2212번 μ„Όμ„œ - 파이썬(Python)
    • [BOJ] λ°±μ€€ 15686번 μΉ˜ν‚¨ 배달 - 파이썬(Python)
    J1Yun
    J1Yun
    개발 κ΄€λ ¨ 기술 및 곡뢀 λ‚΄μš© 기둝μž₯

    ν‹°μŠ€ν† λ¦¬νˆ΄λ°”