-
[백준/BOJ] 1051번 숫자 정사각형 (C++)알고리즘 문제풀이/백준 2021. 11. 16. 17:34
https://www.acmicpc.net/problem/1051
문제의 이해가 좀 어려웠는데, 난이도는 쉬운 문제였다. 꼭지점의 값이 모두 같은 가장 큰 정사각형의 넓이를 찾는 완전 탐색(브루트 포스) 문제였다.
#include <iostream> #include <algorithm> using namespace std; int map[51][51]; int main(void) { freopen("input.txt", "rt", stdin); ios_base::sync_with_stdio(false); cin.tie(0); int n, m, answer = 1; cin >> n >> m; for(int i = 0; i < n; i++) { string num; cin >> num; for(int j = 0; j < num.size(); j++) { map[i][j] = num[j] - '0'; } } for(int k = 2; k <= min(n, m); k++) { for(int i = 0; i < n - k + 1; i++) { for(int j = 0; j < m - k + 1; j++) { if(map[i][j] == map[i + k - 1][j] && map[i][j] == map[i][j + k - 1] && map[i][j] == map[i + k - 1][j + k - 1]) { answer = max(answer, k * k); } } } } cout << answer; }
'알고리즘 문제풀이 > 백준' 카테고리의 다른 글
[백준/BOJ] 1068번 트리 (0) 2022.04.25 [백준/BOJ] 2636번 치즈 (0) 2022.04.24 [백준/BOJ] 1600번 말이 되고픈 원숭이 (C++) (0) 2021.11.04 [백준/BOJ] 1527번 금민수의 개수 (C++) (0) 2021.11.02 [백준/BOJ] 2573번 빙산 (C++) (0) 2021.11.02