티스토리 뷰

출처 : https://www.acmicpc.net/problem/14500


#include <iostream>

#include <algorithm>

using namespace std;


#define MAX_N 512


int N, M, result;

int map[MAX_N][MAX_N];

int cc[19][4][2] = {

{ { 0,0 },{ 1,0 },{ 0,1 },{ 1,1 } },

{ { 0,0 },{ 0,1 },{ 0,2 },{ 0,3 } },

{ { 0,0 },{ 1,0 },{ 2,0 },{ 3,0 } },

{ { 0,0 },{ 1,0 },{ 1,1 },{ 2,1 } },

{ { 0,0 },{ 0,1 },{ 1,1 },{ 1,2 } },

{ { 1,0 },{ 1,1 },{ 0,1 },{ 0,2 } },

{ { 0,1 },{ 1,1 },{ 1,0 },{ 2,0 } },

{ { 0,1 },{ 1,0 },{ 1,1 },{ 1,2 } },

{ { 0,0 },{ 0,1 },{ 0,2 },{ 1,1 } },

{ { 0,1 },{ 1,0 },{ 1,1 },{ 2,1 } },

{ { 0,0 },{ 1,0 },{ 1,1 },{ 2,0 } },

{ { 0,0 },{ 0,1 },{ 0,2 },{ 1,2 } },

{ { 0,1 },{ 1,1 },{ 2,1 },{ 2,0 } },

{ { 1,0 },{ 1,1 },{ 1,2 },{ 0,2 } },

{ { 0,0 },{ 0,1 },{ 1,0 },{ 2,0 } },

{ { 0,0 },{ 0,1 },{ 0,2 },{ 1,0 } },

{ { 0,0 },{ 1,0 },{ 2,0 },{ 2,1 } },

{ { 0,0 },{ 1,0 },{ 1,1 },{ 1,2 } },

{ { 0,0 },{ 0,1 },{ 1,1 },{ 2,1 } },

};


int main()

{

cin >> N >> M; result = 0;

for (int i = 0; i < N; i++)for (int j = 0;j < M;j++) map[i][j] = 0;

for (int i = 1+5; i <= N+5; i++)for (int j = 1+5;j <= M+5;j++) cin >> map[i][j];

for (int i = 1+5; i <= N+5; i++)for (int j = 1+5;j <= M+5;j++)

{

for (int b = 0; b < 19; b++)

{

int res = 0;

for (int c = 0;c < 4;c++)

{

int r = i + cc[b][c][0]; int rr = j + cc[b][c][1];

res += map[r][rr];

}

result = max(result, res);

}

}

cout << result;

}


'알고리즘 > BOJ' 카테고리의 다른 글

[BOJ 14890] 경사로  (0) 2018.08.02
[BOJ 14503] 로봇청소기  (0) 2018.08.02
[BOJ 13458] 시험감독  (0) 2018.08.02
[BOJ 12100] 2048(Easy)  (0) 2018.08.02
[BOJ 14501] 퇴사  (0) 2018.08.02
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함