ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [๋ฐฑ์ค€] 2012 ๋“ฑ์ˆ˜ ๋งค๊ธฐ๊ธฐ with Python
    PS 2022. 3. 31. 04:13
    728x90
    ๋ฐ˜์‘ํ˜•

    ๐Ÿ“Œ BOJ 2012 ๋“ฑ์ˆ˜ ๋งค๊ธฐ๊ธฐ

    ๐Ÿ’ก ์กฐ๊ฑด

    1. 2007๋…„ KOI์— N๋ช…์˜ ํ•™์ƒ๋“ค์ด ์ฐธ๊ฐ€ํ•˜์˜€๋‹ค. ๋ชจ๋“  ํ•™์ƒ๋“ค์€ ์ž์‹ ์ด N๋ช… ์ค‘์—์„œ ๋ช‡ ๋“ฑ์„ ํ•  ๊ฒƒ์ธ์ง€ ์˜ˆ์ƒ ๋“ฑ์ˆ˜๋ฅผ ์ ์–ด์„œ ์ œ์ถœํ•˜๋„๋ก ํ•˜์˜€๋‹ค.

    2. 1๋“ฑ๋ถ€ํ„ฐ N๋“ฑ๊นŒ์ง€ ๋™์„์ฐจ ์—†์ด ๋“ฑ์ˆ˜๋ฅผ ๋งค๊ฒจ์•ผํ•œ๋‹ค. ์ œ์ถœํ•œ ์˜ˆ์ƒ ๋“ฑ์ˆ˜๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์ž„์˜๋กœ ๋“ฑ์ˆ˜๋ฅผ ๋งค๊ธฐ๊ธฐ๋กœ ํ–ˆ๋‹ค.

    3. ์ž์‹ ์˜ ๋“ฑ์ˆ˜๋ฅผ A๋“ฑ์œผ๋กœ ์˜ˆ์ƒํ•˜์˜€๋Š”๋ฐ ์‹ค์ œ ๋“ฑ์ˆ˜๊ฐ€ B๋“ฑ์ด ๋  ๊ฒฝ์šฐ, ์ด ์‚ฌ๋žŒ์˜ ๋ถˆ๋งŒ๋„๋Š” A์™€ B์˜ ์ฐจ์ด (|A - B|)๋กœ ์ˆ˜์น˜ํ™”ํ•  ์ˆ˜ ์žˆ๋‹ค.

    4. ๋‹น์‹ ์€ N๋ช…์˜ ์‚ฌ๋žŒ๋“ค์˜ ๋ถˆ๋งŒ๋„์˜ ์ด ํ•ฉ์„ ์ตœ์†Œ๋กœ ํ•˜๋ฉด์„œ, ํ•™์ƒ๋“ค์˜ ๋“ฑ์ˆ˜๋ฅผ ๋งค๊ธฐ๋ ค๊ณ  ํ•œ๋‹ค.

    5. ์ž์—ฐ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. (1 โ‰ค N โ‰ค 500,000) ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์— ๊ฑธ์ณ ๊ฐ ์‚ฌ๋žŒ์˜ ์˜ˆ์ƒ ๋“ฑ์ˆ˜๊ฐ€ ์ˆœ์„œ๋Œ€๋กœ ์ฃผ์–ด์ง„๋‹ค.
      ์˜ˆ์ƒ ๋“ฑ์ˆ˜๋Š” 500,000 ์ดํ•˜์˜ ์ž์—ฐ์ˆ˜์ด๋‹ค.

    6. ๊ทธ๋ฆฌ๋””์•Œ๊ณ ๋ฆฌ์ฆ˜, ์ •๋ ฌ ์œ ํ˜•์˜ ๋ฌธ์ œ

    ๐Ÿ–ฅ ์†Œ์Šค ์ฝ”๋“œ

    from sys import stdin
    
    n = int(stdin.readline())
    s = []
    for i in range(n):
        s.append(int(stdin.readline()))
    
    s.sort()
    ans = 0
    for i in range(1, n + 1):
        ans += abs(i - s[i - 1])
    print(ans)

    ๐Ÿ”– ์˜ˆ์ œ ๋ฐ ์‹คํ–‰๊ฒฐ๊ณผ

    ์˜ˆ์ œ

    5
    1
    5
    3
    1
    2

    ์‹คํ–‰๊ฒฐ๊ณผ

    3

    โŒจ๏ธ ๋ฌธ์ œ ํ’€์ด

    1. ์˜ˆ์ƒ ๋“ฑ์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ์ฐจ๋ก€๋Œ€๋กœ list s ์— ์ €์žฅํ•œ๋‹ค.

    2. list s ๋ฅผ ์ •๋ ฌ ํ•œ ๋’ค, ans ๋ณ€์ˆ˜๋ฅผ 0์œผ๋กœ ์ดˆ๊ธฐํ™” ํ•˜๊ณ , 1๋ถ€ํ„ฐ n + 1๊นŒ์ง€ ์ˆœํšŒํ•˜๋ฉด์„œ ์˜ˆ์ƒ๋“ฑ์ˆ˜์— ํ•ด๋‹นํ•˜๋Š”
      ๋ถˆ๋งŒ๋„๋ฅผ ๊ณ„์‚ฐํ•˜์—ฌ ans์— ์ €์žฅํ•ด์ค€๋‹ค.

    3. ans๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

    4. ๋ถˆ๋งŒ๋„๋ฅผ ์ •๋ ฌํ•˜์—ฌ ์‹ค์ œ ๋“ฑ์ˆ˜์™€ ๋น„๊ตํ•˜์—ฌ ๊ณ„์‚ฐ์„ ํ•˜๋ฉด ์ตœ์†Ÿ๊ฐ’์„ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.

    ๐Ÿ’พ ๋А๋‚€์ 

    1. ์ •๋ ฌํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š” ๊ฐ„๋‹จํ•œ ๋ฌธ์ œ์˜€์Šต๋‹ˆ๋‹ค.
    2. ๊ณจ๋“œ 5 ๋‚œ์ด๋„ ์ •๋„์˜ ๊ทธ๋ฆฌ๋””์— ์ทจ์•ฝํ•œ ๋ชจ์Šต์„ ๋ณด์ด๋Š” ๊ฒƒ ๊ฐ™์•„ ์—ฐ์Šต์ด ๋งŽ์ด ํ•„์š”ํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
    ๋ฐ˜์‘ํ˜•

    ๋Œ“๊ธ€

Designed by Tistory.