ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [๋ฐฑ์ค€] 2631 ์ค„์„ธ์šฐ๊ธฐ with Python
    PS 2022. 3. 18. 00:09
    728x90
    ๋ฐ˜์‘ํ˜•

    ๐Ÿ“Œ BOJ 2631 ์ค„์„ธ์šฐ๊ธฐ

    ๐Ÿ’ก ์กฐ๊ฑด

    1. ์„ ์ƒ๋‹˜์€ 1๋ฒˆ๋ถ€ํ„ฐ N๋ฒˆ๊นŒ์ง€ ๋ฒˆํ˜ธ๊ฐ€ ์ ํ˜€์žˆ๋Š” ๋ฒˆํ˜ธํ‘œ๋ฅผ ์•„์ด๋“ค์˜ ๊ฐ€์Šด์— ๋ถ™์—ฌ์ฃผ์—ˆ๋‹ค.

    2. ์„ ์ƒ๋‹˜์€ ์•„์ด๋“ค์„ ํšจ๊ณผ์ ์œผ๋กœ ๋ณดํ˜ธํ•˜๊ธฐ ์œ„ํ•ด ๋ชฉ์ ์ง€๊นŒ์ง€ ๋ฒˆํ˜ธ์ˆœ์„œ๋Œ€๋กœ ์ผ๋ ฌ๋กœ ์„œ์„œ ๊ฑธ์–ด๊ฐ€๋„๋ก ํ•˜์˜€๋‹ค.

    3. ์ด๋™ ๋„์ค‘์— ๋ณด๋‹ˆ ์•„์ด๋“ค์˜ ๋ฒˆํ˜ธ์ˆœ์„œ๊ฐ€ ๋ฐ”๋€Œ์–ด ๋‹ค์‹œ ๋ฒˆํ˜ธ ์ˆœ์„œ๋Œ€๋กœ ์ค„์„ ์„ธ์šฐ๊ธฐ ์œ„ํ•ด์„œ ์•„์ด๋“ค์˜ ์œ„์น˜๋ฅผ ์˜ฎ๊ธฐ๋ ค๊ณ  ํ•œ๋‹ค.

    4. ์•„์ด๋“ค์ด ํ˜ผ๋ž€์Šค๋Ÿฌ์›Œํ•˜์ง€ ์•Š๋„๋ก ํ•˜๊ธฐ ์œ„ํ•ด ์œ„์น˜๋ฅผ ์˜ฎ๊ธฐ๋Š” ์•„์ด๋“ค์˜ ์ˆ˜๋ฅผ ์ตœ์†Œ๋กœ ํ•˜๋ ค๊ณ  ํ•œ๋‹ค.

    5. ์•„์ด๋“ค์˜ ์ˆ˜ N์€ 2 ์ด์ƒ 200 ์ดํ•˜์˜ ์ •์ˆ˜์ด๋‹ค.

    6. ๋‹ค์ด๋‚˜๋ฏนํ”„๋กœ๊ทธ๋ž˜๋ฐ ์œ ํ˜•์˜ ๋ฌธ์ œ

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

    from sys import stdin
    
    n = int(stdin.readline())
    num = [int(stdin.readline()) for _ in range(n)]
    
    dp = [0 for _ in range(n)]
    
    for i in range(n):
        dp[i] = 1
        for j in range(i):
            if num[i] > num[j]:
                dp[i] = max(dp[i], dp[j] + 1)
    
    lis = 0
    lis = max(lis, max(dp))
    
    answer = n - lis
    print(answer)

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

    ์˜ˆ์ œ

    7
    3
    7
    5
    2
    6
    1
    4

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

    4

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

    1. ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ํ•ด๊ฒฐ ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.

    2. ์ž…๋ ฅ๋ฐ›์€ ์•„์ด๋“ค์˜ ์ˆœ์„œ๋ฅผ ์œ ์ง€ํ•˜๊ณ  ์ˆซ์ž๋ฅผ ๋ฝ‘์•˜์„ ๋•Œ, ์ฆ๊ฐ€ํ•˜๋Š” ์ˆ˜์—ด์ธ๋ฐ ๊ฐ€์žฅ ๊ธด ๊ธธ์ด๋ฅผ ๊ตฌํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ž…๋‹ˆ๋‹ค.

    3. N๋งŒํผ ์ˆœํšŒํ•˜๋ฉด์„œ i๋ฒˆ์งธ ์•„์ด๋ฅผ ์ด์ „์˜ ์•„์ด์˜ ๋ฒˆํ˜ธ๋ฅผ i-1๋ฒˆ์งธ ์•„์ด์˜ ์ˆซ์ž์™€ ๋น„๊ตํ•ด
      dp[i] ๋ฒˆ์งธ ์•„์ด์˜ ๋ฒˆํ˜ธ์™€ dp[j]+1 ์˜ ์ˆซ์ž ์ค‘ ํฐ๊ฑธ dp[i]์— dp ๋ฆฌ์ŠคํŠธ๋ฅผ ๊ฐฑ์‹ ํ•ฉ๋‹ˆ๋‹ค.

    4. dp ๋ฆฌ์ŠคํŠธ์—์„œ ๊ฐ€์žฅ ํฐ ๊ฐ’์„ ์ฐพ์•„ ๋‹ต์„ ์ถœ๋ ฅํ•  ๋ณ€์ˆ˜ lis์™€ max() ํ•จ์ˆ˜๋กœ ํฌ๊ธฐ๋ฅผ ๋น„๊ตํ•œ ํ›„ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

    5. answer ๋ณ€์ˆ˜์— n๋ช…์˜ ์•„์ด - lis ๊ฐ’์„ ์ €์žฅํ•˜๊ณ  ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.

    6. n๋ช…์˜ ์•„์ด ์ค‘, ์ด๋™ํ•˜๋Š” ์•„์ด์˜ ์ˆ˜๋Š” lis ์ž…๋‹ˆ๋‹ค.

    ๐Ÿ’พ ๋Š๋‚€์ 

    1. ๋‹ค์ด๋‚˜๋ฏนํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ์ง„์งœ ๊ทนํ˜์ด๋‹ค.
    ๋ฐ˜์‘ํ˜•

    ๋Œ“๊ธ€

Designed by Tistory.