ํฐ์คํ ๋ฆฌ ๋ทฐ
2212 ์ผ์
๋ฌธ์
ํ๊ตญ๋๋ก๊ณต์ฌ๋ ๊ณ ์๋๋ก์ ์ ๋น์ฟผํฐ์คํ๋ฅผ ์ํด ๊ณ ์๋๋ก ์์ N๊ฐ์ ์ผ์๋ฅผ ์ค์นํ์๋ค. ๋ฌธ์ ๋ ์ด ์ผ์๋ค์ด ์์งํ ์๋ฃ๋ค์ ๋ชจ์ผ๊ณ ๋ถ์ํ ๋ช ๊ฐ์ ์ง์ค๊ตญ์ ์ธ์ฐ๋ ์ผ์ธ๋ฐ, ์์ฐ์์ ๋ฌธ์ ๋ก, ๊ณ ์๋๋ก ์์ ์ต๋ K๊ฐ์ ์ง์ค๊ตญ์ ์ธ์ธ ์ ์๋ค๊ณ ํ๋ค.
๊ฐ ์ง์ค๊ตญ์ ์ผ์์ ์์ ๊ฐ๋ฅ ์์ญ์ ์กฐ์ ํ ์ ์๋ค. ์ง์ค๊ตญ์ ์์ ๊ฐ๋ฅ ์์ญ์ ๊ณ ์๋๋ก ์์์ ์ฐ๊ฒฐ๋ ๊ตฌ๊ฐ์ผ๋ก ๋ํ๋๊ฒ ๋๋ค. N๊ฐ์ ์ผ์๊ฐ ์ ์ด๋ ํ๋์ ์ง์ค๊ตญ๊ณผ๋ ํต์ ์ด ๊ฐ๋ฅํด์ผ ํ๋ฉฐ, ์ง์ค๊ตญ์ ์ ์ง๋น ๋ฌธ์ ๋ก ์ธํด ๊ฐ ์ง์ค๊ตญ์ ์์ ๊ฐ๋ฅ ์์ญ์ ๊ธธ์ด์ ํฉ์ ์ต์ํํด์ผ ํ๋ค.
ํธ์๋ฅผ ์ํด ๊ณ ์๋๋ก๋ ํ๋ฉด์์ ์ง์ ์ด๋ผ๊ณ ๊ฐ์ ํ๊ณ , ์ผ์๋ค์ ์ด ์ง์ ์์ ํ ๊ธฐ์ ์ธ ์์ ์ผ๋ก๋ถํฐ์ ์ ์ ๊ฑฐ๋ฆฌ์ ์์น์ ๋์ฌ ์๋ค๊ณ ํ์. ๋ฐ๋ผ์, ๊ฐ ์ผ์์ ์ขํ๋ ์ ์ ํ๋๋ก ํํ๋๋ค. ์ด ์ํฉ์์ ๊ฐ ์ง์ค๊ตญ์ ์์ ๊ฐ๋ฅ์์ญ์ ๊ฑฐ๋ฆฌ์ ํฉ์ ์ต์๊ฐ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ๋จ, ์ง์ค๊ตญ์ ์์ ๊ฐ๋ฅ์์ญ์ ๊ธธ์ด๋ 0 ์ด์์ด๋ฉฐ ๋ชจ๋ ์ผ์์ ์ขํ๊ฐ ๋ค๋ฅผ ํ์๋ ์๋ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ์ผ์์ ๊ฐ์ N(1 ≤ N ≤ 10,000), ๋์งธ ์ค์ ์ง์ค๊ตญ์ ๊ฐ์ K(1 ≤ K ≤ 1000)๊ฐ ์ฃผ์ด์ง๋ค. ์ ์งธ ์ค์๋ N๊ฐ์ ์ผ์์ ์ขํ๊ฐ ํ ๊ฐ์ ์ ์๋ก N๊ฐ ์ฃผ์ด์ง๋ค. ๊ฐ ์ขํ ์ฌ์ด์๋ ๋น ์นธ์ด ํ๋ ์์ผ๋ฉฐ, ์ขํ์ ์ ๋๊ฐ์ 1,000,000 ์ดํ์ด๋ค.
์ถ๋ ฅ
์ฒซ์งธ ์ค์ ๋ฌธ์ ์์ ์ค๋ช ํ ์ต๋ K๊ฐ์ ์ง์ค๊ตญ์ ์์ ๊ฐ๋ฅ ์์ญ์ ๊ธธ์ด์ ํฉ์ ์ต์๊ฐ์ ์ถ๋ ฅํ๋ค.
์์ ์ ๋ ฅ 1 ๋ณต์ฌ
6
2
1 6 9 3 6 7
์์ ์ถ๋ ฅ 1 ๋ณต์ฌ
5
์์ ์ ๋ ฅ 2 ๋ณต์ฌ
10
5
20 3 14 6 7 8 18 10 12 15
ํ์ด
์ฃผ์ด์ง ์กฐ๊ฑด
์ผ์์ ๊ฐ์(n)
์ง์ค๊ตญ์ ๊ฐ์(k)
์ง์ค๊ตญ์ k๊ฐ๋ฅผ ์ธ์ฐ๋ฉด, (k - 1) ๊ฐ์ ์์ญ์ผ๋ก ๊ตฌ๋ถ์ด ๋๋ค. ์ด ์์ญ๋ค์ด ์์ ๊ฐ๋ฅ ์์ญ์ด ๋๋ค. (๊ณ ์๋๋ก ์์์ ์ฐ๊ฒฐ๋ ๊ตฌ๊ฐ์ผ๋ก ๋ํ๋๋ ๊ตฌ๊ฐ.)
์ฒซ๋ฒ์งธ ์์ ๋ฅผ ๊ทธ๋ฆผ์ผ๋ก ํํํด๋ณด๋ฉด์ ์ด๋ป๊ฒ ํ์ด์ผํ ์ง ์๊ฐํด๋ณด์.
์ผ์๋ค์ ์์น:[ 1, 3, 6, 6, 7, 9 ]
๊ฐ ์ผ์๋ค๊ฐ์ ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํด๋ณธ๋ค.
์ผ์๋ค์ ๊ฑฐ๋ฆฌ: [2, 3, 0, 1, 2]
์ฐ๋ฆฌ๋ 2๊ฐ์ ์์ ๊ฐ๋ฅ ์์ญ์ผ๋ก ๋๋์ด์ผ ํ๋ค.
๊ทธ๋ฐ๋ฐ, ์์ ๊ฐ๋ฅ ์์ญ์ ๊ธธ์ด์ ํฉ์ด ์ต์๊ฐ ๋๋๋กํ๋ ค๋ฉด, ์์ ๊ฐ๋ฅ ์์ญ์ ๋๋๋๊ฒ ์ข์๊น?
๊ทธ๋ ๋ค. ์ผ์ ๊ฐ์ ๊ฑฐ๋ฆฌ ์ค ๊ฐ์ฅ ๊ฑฐ๋ฆฌ๊ฐ ๋จผ 3์ ๊ฒฝ๊ณ๋ก ๋ ์์ญ์ผ๋ก ๋๋์ด์ผ ํ๋ค. (1,3), (6,6,7,9)
๊ทธ๋ ๋ค๋ฉด ์์ ๊ฐ๋ฅ ์์ญ ๊ธธ์ด์ ํฉ์, 2 + (0 + 1 + 2)๊ฐ ๋ ๊ฒ์ด๋ค.
์ฆ, (์ง์ค๊ตญ k๊ฐ๋ก ์์ ๊ฐ๋ฅ ์์ญ์ k๊ฐ์ด๊ณ , k๊ฐ์ ์์ญ์ผ๋ก ๊ตฌ๋ถ๋๊ธฐ ์ํด์๋ k-1 ๊ฐ์ ๊ฒฝ๊ณ๊ฐ ์๊ธฐ๋ฏ๋ก) ์ผ์๋ค ๊ฐ์ ๊ฑฐ๋ฆฌ ์ค ๊ฐ์ฅ ๋จผ ๊ฑฐ๋ฆฌ(์ง์ค๊ตญ ๊ฐ์ ๊ฒฝ๊ณ๊ฐ ๋์ด ๊ณ ๋ คํ์ง ์์๋ ๋๋ ๊ฑฐ๋ฆฌ. ์ฌ๊ธฐ์๋ 3) k-1๊ฐ๋ฅผ ์ ์ธํ ํฉ์ด ์์ ๊ฐ๋ฅ ์์ญ์ ์ต์ ๊ธธ์ด ํฉ์ด ๋๋ค.
์์ 2๋ ๊ฐ์ ๋ฐฉ์์ผ๋ก ํ์ดํ ์ ์๊ฒ ๋ค.
1 + 1 + 1+ 2+ 2+ 2 = 7
์ฝ๋
N = int(input())
K = int(input())
sensors = list(map(int, input().split(' ')))
sensors.sort()
dist = []
for idx in range(0, N-1):
dist.append(sensors[idx+1] - sensors[idx])
dist.sort()
min_sum = 0
for idx in range(0, N-K):
min_sum += dist[idx]
print(min_sum)
'๐ง๐ปโ๐ป ์ฝ๋ฉํ ์คํธ > ๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐฑ์ค 1966๋ฒ ํ๋ฆฐํฐํ [์๋ฎฌ๋ ์ด์ ][Python] (1) | 2023.01.17 |
---|---|
ํ ์ด๋ ์ดํดํ๋ ๋ฐฑ์ค 9251๋ฒ LCS [DP][Python] (1) | 2023.01.15 |
๋ฐฑ์ค 1912๋ฒ ๋์ ํฉ [DP][Python] (0) | 2023.01.14 |
๋ฐฑ์ค 15624๋ฒ ํผ๋ณด๋์น ์ 7 [Python / JavaScript] (0) | 2023.01.09 |
- Total
- Today
- Yesterday
- react
- state
- Python
- ํจ์
- github
- git
- ์๋ฌ
- ํ์ด์ฌ
- leetcode
- error
- CSS
- React Query
- Context API
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- ๊ทธ๋ํ
- ๋ธ๋ผ์ฐ์
- ์๋ฃ๊ตฌ์กฐ
- ๋ฆฌ์กํธ
- ์ ๋ ฌ
- DOM
- Browser
- Component
- zustand
- mdn
- useState
- ์๊ณ ๋ฆฌ์ฆ
- JavaScript
- BOJ
- ์๋ฐ์คํฌ๋ฆฝํธ
- DB
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |