[๋ฐฑ์ค€] 2212 ์„ผ์„œ (python ํŒŒ์ด์ฌ)

2024. 3. 27. 12:05ยท๐Ÿงฉ Problem Solving/[๋ฐฑ์ค€]
 

2212๋ฒˆ: ์„ผ์„œ

์ฒซ์งธ ์ค„์— ์„ผ์„œ์˜ ๊ฐœ์ˆ˜ N(1 ≤ N ≤ 10,000), ๋‘˜์งธ ์ค„์— ์ง‘์ค‘๊ตญ์˜ ๊ฐœ์ˆ˜ K(1 ≤ K ≤ 1000)๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์…‹์งธ ์ค„์—๋Š” N๊ฐœ์˜ ์„ผ์„œ์˜ ์ขŒํ‘œ๊ฐ€ ํ•œ ๊ฐœ์˜ ์ •์ˆ˜๋กœ N๊ฐœ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ ์ขŒํ‘œ ์‚ฌ์ด์—๋Š” ๋นˆ ์นธ์ด ํ•˜๋‚˜ ์žˆ

www.acmicpc.net


๋ฌธ์ œ ํ•ด์„์„ ์ž˜ํ•ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ.


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

๋จผ์ € ๋ฌธ์ œ๊ฐ€ ์š”๊ตฌํ•˜๋Š” ๊ฒƒ์„ ์ดํ•ดํ•˜๋Š” ๊ฒŒ ํ•„์š”ํ•˜๋‹ค. 
 
๋ฌธ์ œ์—์„œ๋Š” ๊ฐ ์ง‘์ค‘๊ตญ์˜ ์ˆ˜์‹  ๊ฐ€๋Šฅ์˜์—ญ์˜ ๊ฑฐ๋ฆฌ์˜ ํ•ฉ์˜ ์ตœ์†Ÿ๊ฐ’์„ ๊ตฌํ•˜๋ผ๊ณ  ํ–ˆ๋‹ค.
์ด๋Š” ์•„๋ž˜ ์˜ˆ์ œ๋ฅผ ๋ณด๋ฉฐ ์„ค๋ช…ํ•ด ๋ณด๋ฉด,
 

 
์ด๋Ÿฐ ์‹์œผ๋กœ ๊ฐ ์„ผ์„œ๋“ค์„ ์ปค๋ฒ„ํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ์†Œ ์˜์—ญ์˜ ํฌ๊ธฐ๋ฅผ ๊ตฌํ•˜๋ฉด ๋œ๋‹ค. ๊ทธ๋ฆผ์„ ๋ณด๋ฉด ์•Œ๋‹ค์‹œํ”ผ ๋ฌธ์ œ์˜ ๋‹ต์„ ๊ตฌํ•  ๋•Œ ์„ผ์„œ์˜ ์œ„์น˜๋Š” ๊ฒน์ณ๋„ ์ƒ๊ด€์—†๋‹ค.
 
๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด, ์„ผ์„œ๋“ค์˜ ๊ฑฐ๋ฆฌ๊ฐ€ ๊ฐ€์žฅ ๋จผ ๊ณณ๋ถ€ํ„ฐ ์ฐจ๋ก€๋Œ€๋กœ ์ง€์›Œ์ฃผ๋ฉด ๋œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์œ„์˜ ๊ทธ๋ฆผ์—์„œ ์„ผ์„œ๋“ค์€ ์ฒ˜์Œ์— 1 - 9 ๋ฒ”์œ„์— ์ „๋ถ€ ์žˆ๋‹ค. ์—ฌ๊ธฐ์„œ 3๊ณผ 6์˜ ์„ผ์„œ๊ฐ€ ๊ฐ€์žฅ ๋ฉ€๋ฆฌ ๋–จ์–ด์ ธ ์žˆ์œผ๋ฏ€๋กœ ์ด๊ณณ์„ ๋น„์›Œ์ฃผ๋ฉด 1 - 3, 6 - 9 ๋‘ ๊ฐœ์˜ ์ง‘์ค‘๊ตญ์œผ๋กœ ๋ชจ๋“  ์„ผ์„œ๋ฅผ ์ตœ์†Œ ์˜์—ญ์œผ๋กœ ์ปค๋ฒ„ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

์ด๋Ÿฐ ์‹์œผ๋กœ ์ด ๋ฌธ์ œ๋Š” ๊ฐ„๊ฒฉ์ด ๊ธด ๊ณณ๋ถ€ํ„ฐ ์ฐจ๋ก€๋Œ€๋กœ ์ง€์›Œ์ฃผ๋ฉด ๋œ๋‹ค. ์ง‘์ค‘๊ตญ์˜ ๊ฐœ์ˆ˜๊ฐ€ K๊ฐœ ์ด๋ฏ€๋กœ K - 1๋ฒˆ ๋ฐ˜๋ณตํ•ด์„œ ์ง€์›Œ์ฃผ๋ฉด ๋œ๋‹ค.

 

๊ทธ๋ฆฌ๊ณ  ๋งŒ์•ฝ ์ง‘์ค‘๊ตญ ๊ฐœ์ˆ˜๊ฐ€ ์„ผ์„œ ๊ฐœ์ˆ˜๋ณด๋‹ค ๋งŽ๊ฑฐ๋‚˜ ๊ฐ™์œผ๋ฉด(K >= N) ๋”ฐ๋กœ ๊ณ„์‚ฐ ํ•„์š” ์—†์ด 0์„ ์ถœ๋ ฅํ•ด ์ฃผ๋ฉด ๋œ๋‹ค. ๊ฐ๊ฐ์˜ ์„ผ์„ธ๋“ค์€ ์ „๋ถ€ ์ปค๋ฒ„ ๊ฐ€๋Šฅํ•˜๊ธฐ ๋•Œ๋ฌธ.


์ „์ฒด ์ฝ”๋“œ

diffList = [] # ๊ฐ ์„ผ์„œ์˜ ๊ฑฐ๋ฆฌ ์ฐจ์ด ์ €์žฅ

N = int(input())
K = int(input())

sensorList = [int(x) for x in input().split()]

if K >= N:
    print(0)
    exit()

sensorList.sort() # ์„ผ์„œ ์œ„์น˜ ์ •๋ ฌ

for i in range(1, N):
    diffList.append(sensorList[i] - sensorList[i - 1])

for _ in range(K - 1):
    diffList[diffList.index(max(diffList))] = 0

print(sum(diffList))

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

sensorList.sort() # ์„ผ์„œ ์œ„์น˜ ์ •๋ ฌ

for i in range(1, N):
    diffList.append(sensorList[i] - sensorList[i - 1])


 ์„ผ์„œ๋“ค์˜ ๊ฑฐ๋ฆฌ์ฐจ๋ฅผ ๊ณ„์‚ฐํ•˜๊ธฐ ์œ„ํ•ด ๋จผ์ € ์ •๋ ฌํ•˜๊ณ  ๊ฐ ์„ผ์„œ๋“ค์˜ ๊ฑฐ๋ฆฌ์ฐจ๋ฅผ ๊ณ„์‚ฐํ•ด ์ค€๋‹ค.

 

for _ in range(K - 1):
    diffList[diffList.index(max(diffList))] = 0
    
print(sum(diffList))


๊ฑฐ๋ฆฌ์ฐจ๊ฐ€ ๊ฐ€์žฅ ๋งŽ์ด ๋‚˜๋Š” ๊ฒƒ๋ถ€ํ„ฐ K - 1 ๋ฒˆ ์ œ๊ฑฐํ•ด ์ค€๋‹ค.


 

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

'๐Ÿงฉ Problem Solving > [๋ฐฑ์ค€]' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[๋ฐฑ์ค€] 7579 ์•ฑ (python ํŒŒ์ด์ฌ)  (0) 2024.03.28
[๋ฐฑ์ค€] 4179 ๋ถˆ! (python ํŒŒ์ด์ฌ)  (0) 2024.03.28
[๋ฐฑ์ค€] 16918 ๋ด„๋ฒ„๋งจ (python ํŒŒ์ด์ฌ)  (0) 2024.03.23
[๋ฐฑ์ค€] 1697 ์ˆจ๋ฐ”๊ผญ์งˆ (python ํŒŒ์ด์ฌ)  (0) 2024.03.22
[๋ฐฑ์ค€] 15666 N๊ณผ M 12 (python ํŒŒ์ด์ฌ)  (0) 2024.03.21
'๐Ÿงฉ Problem Solving/[๋ฐฑ์ค€]' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [๋ฐฑ์ค€] 7579 ์•ฑ (python ํŒŒ์ด์ฌ)
  • [๋ฐฑ์ค€] 4179 ๋ถˆ! (python ํŒŒ์ด์ฌ)
  • [๋ฐฑ์ค€] 16918 ๋ด„๋ฒ„๋งจ (python ํŒŒ์ด์ฌ)
  • [๋ฐฑ์ค€] 1697 ์ˆจ๋ฐ”๊ผญ์งˆ (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)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

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

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

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

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

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
์ œ๋ด‰์•„
[๋ฐฑ์ค€] 2212 ์„ผ์„œ (python ํŒŒ์ด์ฌ)
์ƒ๋‹จ์œผ๋กœ

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