Algorithm Problem/Python

[python] ๋ฐฑ์ค€ - 14500. ํ…ŒํŠธ๋กœ๋ฏธ๋…ธ (์‚ผ์„ฑ SW ์—ญ๋Ÿ‰ ํ…Œ์ŠคํŠธ ๊ธฐ์ถœ ๋ฌธ์ œ)

deo2kim 2020. 11. 16. 08:36
๋ฐ˜์‘ํ˜•

๐Ÿค”๋ฌธ์ œ ํ•ด๊ฒฐ

  • G5 | ์™„์ „ํƒ์ƒ‰, ๊ตฌํ˜„

5๊ฐ€์ง€ ๋„ํ˜•์„ ํšŒ์ „์‹œํ‚ค๊ฑฐ๋‚˜ ๋Œ€์นญ์‹œ์ผœ์„œ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฐ€์ง€์ˆ˜๋Š” 19๊ฐ€์ง€์ด๋‹ค.

 

  • ๋ชจ๋“  ๋„ํ˜•์˜ ์ขŒํ‘œ(0, 0์„ ๊ธฐ์ค€์œผ๋กœ)๋ฅผ ๋งŒ๋“ ๋‹ค.
  • ์ฃผ์–ด์ง„ 2์ฐจ์› ๋ฆฌ์ŠคํŠธ๋ฅผ ํ•œ์นธ์”ฉ ๋Œ๋ฉด์„œ
  • ๊ทธ ์ง€์ ์—์„œ 19๊ฐ€์ง€ ๋„ํ˜•์„ ๊ฒน์ณ์„œ ์ˆซ์ž๋ฅผ ํƒ์ƒ‰ํ•œ๋‹ค.

๐Ÿ’ป์†Œ์Šค ์ฝ”๋“œ

import sys

input = sys.stdin.readline


def go_tetromino(x, y):
    for tetromino in tetrominos:
        sum_tet = 0
        for _x, _y in tetromino:
            try:
                sum_tet += paper[x + _x][y + _y]
            except IndexError:
                break
        else:
            result.append(sum_tet)


if __name__ == '__main__':
    N, M = map(int, input().split())  # ์„ธ๋กœ ๊ฐ€๋กœ
    paper = [list(map(int, input().split())) for _ in range(N)]
    result = []
    tetrominos = [
        [(0, 0), (0, 1), (1, 0), (1, 1)],
        [(0, 0), (0, 1), (0, 2), (0, 3)],
        [(0, 0), (1, 0), (2, 0), (3, 0)],
        [(0, 0), (0, 1), (0, 2), (1, 0)],
        [(0, 0), (0, 1), (0, 2), (-1, 2)],
        [(0, 0), (1, 0), (1, 1), (1, 2)],
        [(0, 0), (0, 1), (0, 2), (1, 2)],
        [(0, 0), (1, 0), (2, 0), (2, 1)],
        [(0, 0), (0, 1), (1, 1), (2, 1)],
        [(0, 0), (0, 1), (1, 0), (2, 0)],
        [(0, 0), (1, 0), (2, 0), (2, -1)],
        [(0, 0), (1, 0), (1, 1), (2, 1)],
        [(0, 0), (0, 1), (1, 0), (-1, 1)],
        [(0, 0), (0, 1), (1, 0), (1, -1)],
        [(0, 0), (0, 1), (1, 1), (1, 2)],
        [(0, 0), (0, 1), (0, 2), (1, 1)],
        [(0, 0), (1, 0), (1, 1), (1, -1)],
        [(0, 0), (1, 0), (2, 0), (1, -1)],
        [(0, 0), (1, 0), (1, 1), (2, 0)]
    ]
    for i in range(N):
        for j in range(M):
            go_tetromino(i, j)

    print(max(result))
 

 

๐Ÿ“•๋ฌธ์ œ ํ™•์ธ

์ถœ์ฒ˜: BACKJOON ONLINE JUDGE

๋งํฌ: https://www.acmicpc.net/problem/14500

 

14500๋ฒˆ: ํ…ŒํŠธ๋กœ๋ฏธ๋…ธ

ํด๋ฆฌ์˜ค๋ฏธ๋…ธ๋ž€ ํฌ๊ธฐ๊ฐ€ 1×1์ธ ์ •์‚ฌ๊ฐํ˜•์„ ์—ฌ๋Ÿฌ ๊ฐœ ์ด์–ด์„œ ๋ถ™์ธ ๋„ํ˜•์ด๋ฉฐ, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•ด์•ผ ํ•œ๋‹ค. ์ •์‚ฌ๊ฐํ˜•์€ ์„œ๋กœ ๊ฒน์น˜๋ฉด ์•ˆ ๋œ๋‹ค. ๋„ํ˜•์€ ๋ชจ๋‘ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์–ด์•ผ ํ•œ๋‹ค. ์ •์‚ฌ๊ฐํ˜•์˜ ๋ณ€

www.acmicpc.net

 

๋ฐ˜์‘ํ˜•