[๋ฐฑ์ค€] 28017 ๊ฒŒ์ž„์„ ํด๋ฆฌ์–ดํ•˜์ž (python ํŒŒ์ด์ฌ)

2023. 7. 1. 03:11ยท๐Ÿงฉ Problem Solving/[๋ฐฑ์ค€]

https://www.acmicpc.net/problem/28017

 

28017๋ฒˆ: ๊ฒŒ์ž„์„ ํด๋ฆฌ์–ดํ•˜์ž

์ฒซ์งธ ์ค„์— ์‚ฐ์ง€๋‹ˆ๊ฐ€ ๊ฒŒ์ž„์„ ๋ช‡ ํšŒ์ฐจ๋ฅผ ํ•˜๋Š”์ง€ ๋‚˜ํƒ€๋‚ด๋Š” ์ˆ˜ $N$๊ณผ ๋ฌด๊ธฐ์˜ ์ข…๋ฅ˜ $M$์ด ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด ์ฃผ์–ด์ง„๋‹ค. $(2 \le N, M \le 500)$ ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ $N$๊ฐœ์˜ ์ค„์—๋Š” ๊ฐ ๋ฌด๊ธฐ๋งˆ๋‹ค ๊ฒŒ์ž„์„ ํด๋ฆฌ์–ดํ•˜๋Š”๋ฐ

www.acmicpc.net


๋Œ€ํšŒ ์ดˆ๋ฐ˜์— ์‚ฝ์ง‘ํ•˜๋‹ค๊ฐ€ DP์ธ๊ฑธ ๊นจ๋‹ซ๊ณ  ํ•ด๊ฒฐํ–ˆ๋‹ค. pypy๋กœ ์ œ์ถœ, ์ดํ›„ python์œผ๋กœ ๋‹ค์‹œ ์ œ์ถœ.


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

1. ๋ฐ˜๋ณต๋ฌธ

  • ๋‹จ์ˆœ ๋ฐ˜๋ณต๋ฌธ์œผ๋กœ ์ž‘์„ฑํ–ˆ๋‹ค ์‹คํŒจํ–ˆ๋‹ค. 

2. DP

  • nํšŒ์ฐจ์˜ ๊ฐ ๋ฌด๊ธฐ๋งˆ๋‹ค ์˜ฌ ์ˆ˜ ์žˆ๋Š” ์‹œ๊ฐ„์„ ์ €์žฅํ•˜๋ฉด ๋œ๋‹ค.

  • ์œ„ ์ด๋ฏธ์ง€์ฒ˜๋Ÿผ ์ด์ „ ํ–‰์— ์žˆ๋Š” ๊ฐ’ ์ค‘ ์ตœ์†Ÿ๊ฐ’์„ ๋‹ค์Œ ํ–‰์— ๋”ํ•ด๊ฐ€๋ฉฐ ์—…๋ฐ์ดํŠธํ•˜๋ฉด ๋œ๋‹ค.
  • ์ตœ์ข…์ ์œผ๋กœ ๋งˆ์ง€๋ง‰ ํ–‰์˜ ์ตœ์†Ÿ๊ฐ’์„ ์ถœ๋ ฅํ•˜๋ฉด ๋œ๋‹ค.

์ „์ฒด ์ฝ”๋“œ - pypy๋กœ ์ œ์ถœ

import sys

INF = int(1e9)
N, M = map(int, input().split())
arr = []

for _ in range(N):
    arr.append([int(x) for x in sys.stdin.readline().split()])

for i in range(N - 1):

    for j in range(M):

        temp = INF

        for k in range(M):
            if arr[i][k] <= temp and j != k:
                temp = arr[i][k]

        arr[i + 1][j] += temp

print(min(arr[N - 1]))

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

for i in range(N - 1):

    for j in range(M):

        temp = INF

        for k in range(M):
            if arr[i][k] <= temp and j != k:
                temp = arr[i][k]

        arr[i + 1][j] += temp

์œ„ ์„ค๋ช…ํ•œ ๋ถ€๋ถ„์„ ์ฝ”๋“œ๋กœ ๊ตฌํ˜„ํ•œ ๊ฒƒ์ด๋‹ค.

for๋ฌธ์— 3๊ฐœ๋ผ python์œผ๋กœ ์ œ์ถœ ์‹œ ์‹œ๊ฐ„ ์ดˆ๊ณผ๊ฐ€ ๋ฐœ์ƒํ•ด pypy๋กœ ์ œ์ถœํ–ˆ๋‹ค.


์ถ”๊ฐ€) ์ „์ฒด ์ฝ”๋“œ - python3๋กœ ์ œ์ถœ

import sys

N, M = map(int, input().split())
arr = []

for _ in range(N):
    arr.append([int(x) for x in sys.stdin.readline().split()])

for i in range(N - 1):

    for j in range(M):

        temp = min(arr[i][:j] + arr[i][j + 1:])

        arr[i + 1][j] += temp

print(min(arr[N - 1]))

 

ํŒŒ์ด์ฌ์˜ slicing ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•ด ์‹œ๊ฐ„์„ ๋‹จ์ถ•์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค.

python3๋กœ ์ œ์ถœํ•˜๋‹ˆ ํ†ต๊ณผํ–ˆ๋‹ค.

 

๊ทธ๋ฆฌ๊ณ  arr์—์„œ ์ด์ „ํ–‰์˜ ์ •๋ณด๋Š” ํ•„์š” ์—†์œผ๋ฏ€๋กœ ์ด๋ฅผ ์ด์šฉํ•ด ๋ฐฐ์—ด ํฌ๊ธฐ๋„ ์ค„์ผ ์ˆ˜ ์žˆ๋‹ค.

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

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

[๋ฐฑ์ค€] 28250 ์ด๋ธŒ, ํ”„์‹œ์ผ€ ๊ทธ๋ฆฌ๊ณ  ํ‘ธ๋ฅธ MEX์˜ ์•„๋‚ด (C++ cpp)  (0) 2023.07.03
[๋ฐฑ์ค€] 28250 ์ด๋ธŒ, ํ”„์‹œ์ผ€ ๊ทธ๋ฆฌ๊ณ  ํ‘ธ๋ฅธ MEX์˜ ์•„๋‚ด (python ํŒŒ์ด์ฌ)  (0) 2023.07.03
[๋ฐฑ์ค€] 9205 ๋งฅ์ฃผ ๋งˆ์‹œ๋ฉด์„œ ๊ฑธ์–ด๊ฐ€๊ธฐ (python ํŒŒ์ด์ฌ)  (0) 2023.04.09
[๋ฐฑ์ค€] 1759 ์•”ํ˜ธ๋งŒ๋“ค๊ธฐ (python ํŒŒ์ด์ฌ)  (0) 2023.03.30
[๋ฐฑ์ค€] 11559 puyopuyo (ํŒŒ์ด์ฌ python)  (0) 2023.03.26
'๐Ÿงฉ Problem Solving/[๋ฐฑ์ค€]' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [๋ฐฑ์ค€] 28250 ์ด๋ธŒ, ํ”„์‹œ์ผ€ ๊ทธ๋ฆฌ๊ณ  ํ‘ธ๋ฅธ MEX์˜ ์•„๋‚ด (C++ cpp)
  • [๋ฐฑ์ค€] 28250 ์ด๋ธŒ, ํ”„์‹œ์ผ€ ๊ทธ๋ฆฌ๊ณ  ํ‘ธ๋ฅธ MEX์˜ ์•„๋‚ด (python ํŒŒ์ด์ฌ)
  • [๋ฐฑ์ค€] 9205 ๋งฅ์ฃผ ๋งˆ์‹œ๋ฉด์„œ ๊ฑธ์–ด๊ฐ€๊ธฐ (python ํŒŒ์ด์ฌ)
  • [๋ฐฑ์ค€] 1759 ์•”ํ˜ธ๋งŒ๋“ค๊ธฐ (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)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

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

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

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

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

  • ์ตœ๊ทผ ๊ธ€

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

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