๋ฐฑ์ค (boj) ํ์ด์ฌ - 14500 : ํ ํธ๋ก๋ฏธ๋ ธ
๋ฌธ์ ๋งํฌ : https://www.acmicpc.net/problem/14500
14500๋ฒ: ํ ํธ๋ก๋ฏธ๋ ธ
ํด๋ฆฌ์ค๋ฏธ๋ ธ๋ ํฌ๊ธฐ๊ฐ 1×1์ธ ์ ์ฌ๊ฐํ์ ์ฌ๋ฌ ๊ฐ ์ด์ด์ ๋ถ์ธ ๋ํ์ด๋ฉฐ, ๋ค์๊ณผ ๊ฐ์ ์กฐ๊ฑด์ ๋ง์กฑํด์ผ ํ๋ค. ์ ์ฌ๊ฐํ์ ์๋ก ๊ฒน์น๋ฉด ์ ๋๋ค. ๋ํ์ ๋ชจ๋ ์ฐ๊ฒฐ๋์ด ์์ด์ผ ํ๋ค. ์ ์ฌ๊ฐํ์ ๋ณ๋ผ๋ฆฌ ์ฐ๊ฒฐ๋์ด ์์ด์ผ ํ๋ค. ์ฆ, ๊ผญ์ง์ ๊ณผ ๊ผญ์ง์ ๋ง ๋ง๋ฟ์ ์์ผ๋ฉด ์ ๋๋ค. ์ ์ฌ๊ฐํ 4๊ฐ๋ฅผ ์ด์ด ๋ถ์ธ ํด๋ฆฌ์ค๋ฏธ๋ ธ๋ ํ ํธ๋ก๋ฏธ๋ ธ๋ผ๊ณ ํ๋ฉฐ, ๋ค์๊ณผ ๊ฐ์ 5๊ฐ์ง๊ฐ ์๋ค. ์๋ฆ์ด๋ ํฌ๊ธฐ๊ฐ N×M์ธ ์ข ์ด ์์ ํ ํธ๋ก๋ฏธ๋ ธ ํ๋๋ฅผ ๋์ผ๋ ค๊ณ ํ๋ค. ์ข ์ด๋ 1×1 ํฌ๊ธฐ์ ์นธ์ผ๋ก ๋๋
www.acmicpc.net
๋ฌธ์ ๋ถ๋ฅ : ๋ธ๋ฃจํธ ํฌ์ค
https://infinitt.tistory.com/241
๋ฐฑ์ค (boj) ํ์ด์ฌ , C++ - 2309 : ์ผ๊ณฑ ๋์์ด
๋ฌธ์ ๋งํฌ : https://www.acmicpc.net/problem/2309 2309๋ฒ: ์ผ๊ณฑ ๋์์ด ์ํ ๊ฐ์ ์ค์ ๊ฑธ์ณ ๋์์ด๋ค์ ํค๊ฐ ์ฃผ์ด์ง๋ค. ์ฃผ์ด์ง๋ ํค๋ 100์ ๋์ง ์๋ ์์ฐ์์ด๋ฉฐ, ์ํ ๋์์ด์ ํค๋ ๋ชจ๋ ๋ค๋ฅด๋ฉฐ, ๊ฐ๋ฅํ ์ ..
infinitt.tistory.com
์ด๋ ค์ด ๊ฐ๋ ์ ์์ง๋ง ์์ฒญ๋ ๋ ธ๊ฐ๋ค ์์ ์ด ์์๋ค.....
ํ๋์ค๋ง ์ ๋ ฅํ๋ค๋ณด๋ฉด ์๋ น์ด ์๊ธธ์ ๋์ ๋ฐ๋ณต์์ ์ด์๋ค.
์ ๋ต์ฝ๋ - ํ์ด์ฌ(python)
N , M = map(int,input().split())
arr = []; x = []
for _ in range(N):
arr.append(list(map(int,input().split())))
answer= []
for i in range(N):
for k in range(M):
# k = 0 1 2 3 4 / M = 5
#์ผ์ - ๊ฐ๋ก
if k+3 < M :
x.append(arr[i][k] + arr[i][k+1] + arr[i][k+2] + arr[i][k+3])
#์ผ์ - ์ธ๋ก
if i+3 < N :
x.append(arr[i][k] + arr[i+1][k] + arr[i+2][k] + arr[i+3][k])
#์ ์ฌ๊ฐํ
if k+1<M and i+1<N :
x.append(arr[i][k] + arr[i][k+1]+arr[i+1][k] + arr[i+1][k+1])
#ใ
๋ชจ์
if k+2 < M and i+1 < N :
x.append(arr[i][k+1] + arr[i+1][k] + arr[i+1][k+1] + arr[i+1][k+2])
#ใ
๋ชจ์
if k+2< M and i+1<N :
x.append(arr[i+1][k+1] + arr[i][k] + arr[i][k+1] + arr[i][k+2])
#ใ
๋ชจ์
if k+1 < M and i+2<N :
x.append(arr[i+1][k] + arr[i][k+1] + arr[i+1][k+1] + arr[i+2][k+1])
#ใ
๋ชจ์
if k+1 < M and i+2<N :
x.append(arr[i+1][k+1] + arr[i][k] + arr[i+1][k] + arr[i+2][k])
##
#
# ๋ชจ์
if k+1 <M and i+2<N:
x.append(arr[i][k]+arr[i][k+1]+arr[i+1][k+1]+arr[i+2][k+1])
##
#
# ๋ชจ์
if k+1 < M and i+2<N:
x.append(arr[i][k]+arr[i][k+1]+arr[i+1][k]+arr[i+2][k])
#
#
## ๋ชจ์
if k+1 < M and i+2<N:
x.append(arr[i][k]+arr[i+1][k]+arr[i+2][k]+ arr[i+2][k+1])
#
#
## ๋ชจ์
if k+1 <M and i+2<N:
x.append(arr[i+2][k]+arr[i][k+1]+arr[i+1][k+1]+arr[i+2][k+1])
###
# ๋ชจ์
if k+2<M and i+1<N:
x.append(arr[i][k]+arr[i][k+1]+arr[i][k+2]+arr[i+1][k])
#
### ๋ชจ์
if k+2<M and i+1<N:
x.append(arr[i][k+2]+arr[i+1][k]+arr[i+1][k+1]+arr[i+1][k+2])
#
### ๋ชจ์
if k+2<M and i+1<N:
x.append(arr[i][k]+arr[i+1][k]+arr[i+1][k+1]+arr[i+1][k+2])
###
# ๋ชจ์
if k+2<M and i+1<N:
x.append(arr[i][k]+arr[i][k+1]+arr[i][k+2]+arr[i+1][k+2])
###
# ๋ชจ์
if k+2<M and i+1<N:
x.append(arr[i][k]+arr[i][k+1]+arr[i][k+2]+arr[i+1][k])
#
##
# ๋ชจ์
if k+1<M and i+2 <N:
x.append(arr[i][k]+arr[i+1][k] + arr[i+1][k+1] + arr[i+2][k+1])
#
##
#
if k+1<M and i+2 <N:
x.append(arr[i][k+1]+arr[i+1][k] + arr[i+1][k+1] + arr[i+2][k])
##
##
if k+2<M and i+1<N:
x.append(arr[i][k]+arr[i][k+1]+arr[i+1][k+1]+arr[i+1][k+2])
##
##
if k+2<M and i+1<N:
x.append(arr[i][k+1]+arr[i][k+2]+arr[i+1][k]+arr[i+1][k+1])
print(max(x))