Algorithm/BOJ

λ°±μ€€(BOJ) 1931번 νšŒμ˜μ‹€λ°°μ • [그리디(Greedy)/μ•Œκ³ λ¦¬μ¦˜/파이썬(python)]

2021. 8. 7. 22:53
λͺ©μ°¨
  1. 문제
  2. μž…λ ₯
  3. 좜λ ₯
  4. ✍ 예제 μ„€λͺ…
  5. ✍ 풀이방법
  6. πŸ“ μ½”λ“œ

 

 

1931번: νšŒμ˜μ‹€ λ°°μ •

(1,4), (5,7), (8,11), (12,14) λ₯Ό μ΄μš©ν•  수 μžˆλ‹€.

www.acmicpc.net

 

문제

ν•œ 개의 νšŒμ˜μ‹€μ΄ μžˆλŠ”λ° 이λ₯Ό μ‚¬μš©ν•˜κ³ μž ν•˜λŠ” N개의 νšŒμ˜μ— λŒ€ν•˜μ—¬ νšŒμ˜μ‹€ μ‚¬μš©ν‘œλ₯Ό λ§Œλ“€λ €κ³  ν•œλ‹€. 각 회의 I에 λŒ€ν•΄ μ‹œμž‘μ‹œκ°„κ³Ό λλ‚˜λŠ” μ‹œκ°„μ΄ μ£Όμ–΄μ Έ 있고, 각 νšŒμ˜κ°€ κ²ΉμΉ˜μ§€ μ•Šκ²Œ ν•˜λ©΄μ„œ νšŒμ˜μ‹€μ„ μ‚¬μš©ν•  수 μžˆλŠ” 회의의 μ΅œλŒ€ 개수λ₯Ό μ°Ύμ•„λ³΄μž. 단, νšŒμ˜λŠ” ν•œλ²ˆ μ‹œμž‘ν•˜λ©΄ 쀑간에 쀑단될 수 μ—†μœΌλ©° ν•œ νšŒμ˜κ°€ λλ‚˜λŠ” 것과 λ™μ‹œμ— λ‹€μŒ νšŒμ˜κ°€ μ‹œμž‘λ  수 μžˆλ‹€. 회의의 μ‹œμž‘μ‹œκ°„κ³Ό λλ‚˜λŠ” μ‹œκ°„μ΄ 같을 μˆ˜λ„ μžˆλ‹€. 이 κ²½μš°μ—λŠ” μ‹œμž‘ν•˜μžλ§ˆμž λλ‚˜λŠ” κ²ƒμœΌλ‘œ μƒκ°ν•˜λ©΄ λœλ‹€.

 

μž…λ ₯

첫째 쀄에 회의의 수 N(1 ≀ N ≀ 100,000)이 μ£Όμ–΄μ§„λ‹€. λ‘˜μ§Έ 쀄뢀터 N+1 μ€„κΉŒμ§€ 각 회의의 정보가 μ£Όμ–΄μ§€λŠ”λ° 이것은 곡백을 사이에 두고 회의의 μ‹œμž‘μ‹œκ°„κ³Ό λλ‚˜λŠ” μ‹œκ°„μ΄ μ£Όμ–΄μ§„λ‹€. μ‹œμž‘ μ‹œκ°„κ³Ό λλ‚˜λŠ” μ‹œκ°„μ€ 231-1보닀 μž‘κ±°λ‚˜ 같은 μžμ—°μˆ˜ λ˜λŠ” 0이닀.

 

좜λ ₯

첫째 쀄에 μ΅œλŒ€ μ‚¬μš©ν•  수 μžˆλŠ” 회의의 μ΅œλŒ€ 개수λ₯Ό 좜λ ₯ν•œλ‹€.

 

 

✍ 예제 μ„€λͺ…

 

λͺ¨λ“  회의 일정을 μ„ μœΌλ‘œ λ‚˜νƒ€λ‚Ό λ•Œ, ν•œ νšŒμ˜μ‹€μ—μ„œ κ°€μž₯ λ§Žμ€ 회의λ₯Ό ν•  수 μžˆλŠ” μ΅œλŒ€κ°’μ€ 4이닀.

 


✍ 풀이방법

greedy μ•Œκ³ λ¦¬μ¦˜μ„ μ‚¬μš©ν•œλ‹€.

κ°€μž₯ λ§Žμ€ 회의λ₯Ό ν•  수 μžˆλŠ” 방법은 κ°€μž₯ 빨리 λλ‚˜λŠ” νšŒμ˜λ“€μ„ μ„ νƒν•˜λŠ” 방법이닀.

λ”°λΌμ„œ νšŒμ˜κ°€ λλ‚˜λŠ” μ‹œκ°„μ„ μ˜€λ¦„μ°¨μˆœμœΌλ‘œ μ •λ ¬ν•˜κ³ , λ‹€μŒμœΌλ‘œ λλ‚˜λŠ” 회의의 μ‹œμž‘μ‹œκ°„κ³Ό 전에 λλ‚¬λ˜ 회의의 λλ‚˜λŠ” μ‹œκ°„μ„ λΉ„κ΅ν–ˆμ„ λ•Œ μ‹œμž‘ μ‹œκ°„μ΄ λλ‚˜λŠ” μ‹œκ°„κ³Ό κ°™κ±°λ‚˜ 크면 countλ₯Ό 1올리면 λœλ‹€.

 

⭐ λλ‚˜λŠ” μ‹œκ°„μ„ μ˜€λ¦„μ°¨μˆœμœΌλ‘œ μ •λ ¬ν•˜λŠ”λ°, λλ‚˜λŠ” μ‹œκ°„μ€ 같은데 μ‹œμž‘ μ‹œκ°„μ΄ λ‹€λ₯Έ κ²½μš°μ— 비ꡐ가 잘 μ•ˆλ  μˆ˜λ„ 있         λ‹€!! κ·Έλž˜μ„œ κΌ­ κΌ­ μ‹œμž‘μ‹œκ°„μ„ λ¨Όμ € μ •λ ¬ν•œλ‹€μŒμ— λλ‚˜λŠ” μ‹œκ°„μ„ μ˜€λ¦„μ°¨μˆœμœΌλ‘œ ν•œ 번 더 ν•΄μ€€λ‹€. 그럼 λλ‚˜λŠ” μ‹œκ°„μ΄       λ™μΌν•΄λ„ λ¨Όμ € μ‹œμž‘ν•˜λŠ” νšŒμ˜κ°€ μ•žμ— μœ„μΉ˜ν•œλ‹€. 

 

 

πŸ“ μ½”λ“œ

import sys

def greedy_meeting_room(list):
    k = 0
    count = 1
    for i in range(1, len(list)):
        if list[k][1] <= list[i][0]:
            count += 1
            k = i
    return count

N = int(sys.stdin.readline())
list = [[0 for j in range(2)] for i in range(N)]

for i in range(N):
    start, finish = map(int, sys.stdin.readline().split())
    list[i][0], list[i][1] = start, finish
 
list.sort(key = lambda x : x[0]) # μ‹œμž‘μ‹œκ°„ μ •λ ¬
list.sort(key = lambda x : x[1]) # λλ‚˜λŠ” μ‹œκ°„ μ •λ ¬

print(greedy_meeting_room(list))

 

μ €μž‘μžν‘œμ‹œ (μƒˆμ°½μ—΄λ¦Ό)

'Algorithm > BOJ' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

λ°±μ€€(BOJ) 11047번 동전 0 [그리디(Greedy)/μ•Œκ³ λ¦¬μ¦˜/파이썬(python)]  (0) 2021.08.11
λ°±μ€€(BOJ) 11000번 κ°•μ˜μ‹€λ°°μ • [그리디(Greedy)/μ•Œκ³ λ¦¬μ¦˜/파이썬(python)/큐]  (0) 2021.08.06
λ°±μ€€(BOJ) 1158번 μš”μ„Έν‘ΈμŠ€ [μ•Œκ³ λ¦¬μ¦˜/파이썬(python)/μ—°κ²°λ¦¬μŠ€νŠΈ]  (0) 2021.07.07
λ°±μ€€(BOJ) 9012번 μŠ€νƒλ¬Έμ œ [파이썬(python)]  (0) 2021.07.02
λ°±μ€€(BOJ) 10828번 μŠ€νƒλ¬Έμ œ [파이썬(python) / μ‹œκ°„μ΄ˆκ³Ό μ—λŸ¬]  (0) 2021.06.28
  1. 문제
  2. μž…λ ₯
  3. 좜λ ₯
  4. ✍ 예제 μ„€λͺ…
  5. ✍ 풀이방법
  6. πŸ“ μ½”λ“œ
'Algorithm/BOJ' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€
  • λ°±μ€€(BOJ) 11047번 동전 0 [그리디(Greedy)/μ•Œκ³ λ¦¬μ¦˜/파이썬(python)]
  • λ°±μ€€(BOJ) 11000번 κ°•μ˜μ‹€λ°°μ • [그리디(Greedy)/μ•Œκ³ λ¦¬μ¦˜/파이썬(python)/큐]
  • λ°±μ€€(BOJ) 1158번 μš”μ„Έν‘ΈμŠ€ [μ•Œκ³ λ¦¬μ¦˜/파이썬(python)/μ—°κ²°λ¦¬μŠ€νŠΈ]
  • λ°±μ€€(BOJ) 9012번 μŠ€νƒλ¬Έμ œ [파이썬(python)]
DAHLIA CHOI
DAHLIA CHOI
DAHLIA CHOI
🌼 dali's log 🌼
DAHLIA CHOI
전체
였늘
μ–΄μ œ
  • λΆ„λ₯˜ 전체보기 (103)
    • Spring (42)
    • JAVA & OOP (8)
    • AWS (2)
    • DevOps (5)
    • Network (7)
    • DB (5)
    • Algorithm (9)
      • BOJ (6)
      • PROGRAMMERS (2)
      • LEETCODE (0)
    • Books (5)
    • νŠΈλŸ¬λΈ” μŠˆνŒ… (5)
    • 회고 (0)
    • 기타 (5)
    • FRENCH (1)
    • 필사 (2)
    • κ²½ν—˜ (5)

λΈ”λ‘œκ·Έ 메뉴

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

곡지사항

인기 κΈ€

졜근 κΈ€

hELLO Β· Designed By μ •μƒμš°.
DAHLIA CHOI
λ°±μ€€(BOJ) 1931번 νšŒμ˜μ‹€λ°°μ • [그리디(Greedy)/μ•Œκ³ λ¦¬μ¦˜/파이썬(python)]
μƒλ‹¨μœΌλ‘œ

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

단좕킀

λ‚΄ λΈ”λ‘œκ·Έ

λ‚΄ λΈ”λ‘œκ·Έ - κ΄€λ¦¬μž ν™ˆ μ „ν™˜
Q
Q
μƒˆ κΈ€ μ“°κΈ°
W
W

λΈ”λ‘œκ·Έ κ²Œμ‹œκΈ€

κΈ€ μˆ˜μ • (κΆŒν•œ μžˆλŠ” 경우)
E
E
λŒ“κΈ€ μ˜μ—­μœΌλ‘œ 이동
C
C

λͺ¨λ“  μ˜μ—­

이 νŽ˜μ΄μ§€μ˜ URL 볡사
S
S
맨 μœ„λ‘œ 이동
T
T
ν‹°μŠ€ν† λ¦¬ ν™ˆ 이동
H
H
단좕킀 μ•ˆλ‚΄
Shift + /
⇧ + /

* λ‹¨μΆ•ν‚€λŠ” ν•œκΈ€/영문 λŒ€μ†Œλ¬Έμžλ‘œ 이용 κ°€λŠ₯ν•˜λ©°, ν‹°μŠ€ν† λ¦¬ κΈ°λ³Έ λ„λ©”μΈμ—μ„œλ§Œ λ™μž‘ν•©λ‹ˆλ‹€.