[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 42576 ์™„์ฃผํ•˜์ง€ ๋ชปํ•œ ์„ ์ˆ˜ (+๋”•์…”๋„ˆ๋ฆฌ get) (python ํŒŒ์ด์ฌ)

2023. 8. 24. 21:45ยท๐Ÿงฉ Problem Solving/[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]
 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr


๋ฌธ์ œ ๋‚œ์ด๋„๋Š” ์‰ฝ์ง€๋งŒ, ์ตํ˜€๋‘๋ฉด ์ข‹์€ ๊ธฐ๋ฒ•๋“ค์ด ๋งŽ๋‹ค. ํŒŒ์ด์ฌ์„ ์ฃผ๋ ฅ์œผ๋กœ ์“ฐ๋Š” ๋งŒํผ ๋ฆฌ์ŠคํŠธ ์ปดํ”„๋ฆฌํ—จ์…˜์„ ๋งŽ์ด ํ™œ์šฉํ•ด์•ผ๊ฒ ๋‹ค.


์•„์ด๋””์–ด

participant์— ์žˆ๋Š” ์ด๋ฆ„์„ key, ์ด๋ฆ„์˜ ์ค‘๋ณต ๊ฐœ์ˆ˜๋ฅผ value๋กœ ๋”•์…”๋„ˆ๋ฆฌ๋ฅผ ๋งŒ๋“ค์–ด์ค€๋‹ค.

 

๊ทธ๋ฆฌ๊ณ  completion๋ฅผ ์ˆœํšŒํ•˜๋ฉฐ ์ด๋ฆ„์ด ๋‚˜์˜ฌ ๋•Œ๋งˆ๋‹ค -1 ํ•ด์ค€๋‹ค. 

 

๋ฌธ์ œ์—์„œ ํ•œ ๋ช…์˜ ์„ ์ˆ˜๋งŒ ์™„์ฃผํ•˜์ง€ ๋ชปํ–ˆ๋‹ค๊ณ  ํ–ˆ์œผ๋ฏ€๋กœ ๋”•์…”๋„ˆ๋ฆฌ์—์„œ value์˜ ๊ฐ’์ด 1์ธ ๊ฑธ ์ฐพ์•„ return ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.


์ „์ฒด ์ฝ”๋“œ

def solution(participant, completion):
    
    dic = {}
    
    for p in participant:
        dic[p] = dic.get(p, 0) + 1
    
    for c in completion:
        dic[c] -= 1
    
    dnf = [k for k, v in dic.items() if v > 0]
    
    return dnf[0]

์ฝ”๋“œ ์„ค๋ช…

for p in participant:
	dic[p] = dic.get(p, 0) + 1

 

๋”•์…”๋„ˆ๋ฆฌ์— get๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊น”๋”ํ•˜๊ฒŒ key, value ์Œ์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค.

dic.get(x)๋Š” ํ•˜๋ฉด key๊ฐ€ x์ธ value๋ฅผ ๋ฐ˜ํ™˜ํ•ด ์ค€๋‹ค. 

์—ฌ๊ธฐ์„œ dic.get(x, '๋””ํดํŠธ ๊ฐ’')๋Š”, dic์—์„œ x์˜ ๋Œ€์‘๋˜๋Š” key๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ ๋””ํดํŠธ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•ด ์ค€๋‹ค.

 

๋”ฐ๋ผ์„œ dic[p] = dic.get(p, 0) + 1 ๋Š” dic์•ˆ์— p๋ผ๋Š” key๊ฐ€ ์žˆ์œผ๋ฉด value + 1, p๋ผ๋Š” key๊ฐ€ ์—†์œผ๋ฉด dic[p] = 1์ด ๋œ๋‹ค.

์ด๋Ÿฐ ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๋ฉด if๋ฌธ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„๋„ ๊น”๋”ํ•˜๊ฒŒ ๊ตฌํ˜„ ๊ฐ€๋Šฅํ•˜๋‹ค.

 

    dnf = [k for k, v in dic.items() if v > 0]
    
    return dnf[0]

๋”•์…”๋„ˆ๋ฆฌ์— items๋ผ๋Š” ๋ฉ”์„œ๋“œ์™€ ๋ฆฌ์ŠคํŠธ ์ปจํ”„๋ฆฌํ—จ์…˜์„ ์‚ฌ์šฉํ•ด์„œ value๊ฐ€ 0๋ณด๋‹ค ํฐ ๊ฒฝ์šฐ, key์™€ value๋ฅผ ๋ฐ˜ํ™˜ํ•ด ์ค€๋‹ค.

๋ฌธ์ œ ์กฐ๊ฑด์—์„œ ์™„์ฃผ ๋ชปํ•œ ์„ ์ˆ˜๋Š” 1๋ช…์ด๋ฏ€๋กœ dnf[0]์œผ๋กœ ์„ ์ˆ˜ ์ด๋ฆ„์„ ๋ฐ˜ํ™˜ํ•ด ์ฃผ๋ฉด ๋œ๋‹ค.

์ €์ž‘์žํ‘œ์‹œ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'๐Ÿงฉ Problem Solving > [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 42626 ๋” ๋งต๊ฒŒ (python ํŒŒ์ด์ฌ)  (0) 2023.08.25
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 42746 ๊ฐ€์žฅ ํฐ ์ˆ˜ (python ํŒŒ์ด์ฌ)  (0) 2023.08.25
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 42862 ์ฒด์œก๋ณต (python ํŒŒ์ด์ฌ)  (0) 2023.08.24
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 118666 ์„ฑ๊ฒฉ ์œ ํ˜• ๊ฒ€์‚ฌํ•˜๊ธฐ (python ํŒŒ์ด์ฌ)  (0) 2022.12.12
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 60057 ๋ฌธ์ž์—ด ์••์ถ• (python ํŒŒ์ด์ฌ)  (0) 2022.12.07
'๐Ÿงฉ Problem Solving/[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 42626 ๋” ๋งต๊ฒŒ (python ํŒŒ์ด์ฌ)
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 42746 ๊ฐ€์žฅ ํฐ ์ˆ˜ (python ํŒŒ์ด์ฌ)
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 42862 ์ฒด์œก๋ณต (python ํŒŒ์ด์ฌ)
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 118666 ์„ฑ๊ฒฉ ์œ ํ˜• ๊ฒ€์‚ฌํ•˜๊ธฐ (python ํŒŒ์ด์ฌ)
์ œ๋ด‰์•„
์ œ๋ด‰์•„
  • ์ œ๋ด‰์•„
    Overthinking
    ์ œ๋ด‰์•„
    fake it till you make it.
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (104)
      • ๐Ÿงฉ Problem Solving (83)
        • [๋ฐฑ์ค€] (74)
        • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] (7)
        • [SW Expert Academy] (1)
        • [์•Œ๊ณ ๋ฆฌ์ฆ˜ for PS] (1)
      • ๐Ÿ“ฆ Data Structure (2)
      • ๐Ÿ“œ Language (14)
        • [python] (14)
      • ๐Ÿ–ค Git (1)
      • ๐ŸŒ† ์ผ์ƒ (2)
        • ๐Ÿ’ฌ ๋ฒฝ๋ณด๊ณ  ๋งํ•˜๊ธฐ (2)
      • ๐Ÿ—„๏ธ ๊ธฐํƒ€ (2)
      • ๐Ÿ”ต css (0)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
  • ๋งํฌ

  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    DP
    ์žฌ๊ท€
    imos
    ์ •์ฒ˜๊ธฐ
    ๋ธŒ๋ฃจํŠธํฌ์Šค
    ๋ฐ๋ธŒ์ฝ”์Šค
    BFS
    Python
    ์œ„์ƒ์ •๋ ฌ
    ๋ถ„ํ•  ์ •๋ณต
    ๊ทธ๋ฆฌ๋””
    ๊ตฌํ˜„
    ํ”Œ๋กœ์ด๋“œ์›Œ์…œ
    ๋ƒ…์ƒ‰
    ํˆฌํฌ์ธํ„ฐ
    ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
    DFS
    ๋ถ€๋ถ„ํ•ฉ
    ํŒฐ๋ฆฐ๋“œ๋กฌ
    ๋ˆ„์ ํ•ฉ
    ๋ฐฑํŠธ๋ž˜ํ‚น
    boj
    ์Šคํƒ
    Bruteforce
    ๋ฐฑ์ค€
    SWEA
    ํ”Œ๋กœ์ด๋“œ ์™€์ƒฌ
    ๋‹ค์ต์ŠคํŠธ๋ผ
    ํŒŒ์ด์ฌ
    slicing
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
์ œ๋ด‰์•„
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 42576 ์™„์ฃผํ•˜์ง€ ๋ชปํ•œ ์„ ์ˆ˜ (+๋”•์…”๋„ˆ๋ฆฌ get) (python ํŒŒ์ด์ฌ)
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”