level 4 - 가장 큰 정사각형 찾기 (Segmentation Fault)

조회수 1012회

(Segmentation Fault) 가 발생하는데 이유를 모르겠어요

'''
#include<iostream>
#include<vector>
#include<utility>
#include<algorithm>
using namespace std;

int Min(int a, int b, int c){
  a = a < b ? a : b;
  return a < c ? a : c;
}

int findLargestSquare(vector<vector<char>> board)
{
  vector<vector<int>> tem(5, vector<int>(5,0));
  int max = 0;
    for(int a=0; a<board.size(); a++){
    for(int b=0; b<board.size();b++){
        if(board[a][b]=='O')
        tem[a][b]=1;
    }
  }
  for(int a=1; a<board.size(); a++){
    for(int b=1; b<board.size();b++){
      if(tem[a][b]==1){
        tem[a][b] = Min(tem[a-1][b-1],tem[a-1][b],tem[a][b-1])+1;
        max = max > tem[a][b] ? max : tem[a][b];
      }
    }
  }
    return pow(max,2);
}

int main()
{
    vector<vector<char>> board{
                {'X','O','O','O','X'},
                {'X','O','O','O','O'},
                {'X','X','O','O','O'},
                {'X','X','O','O','O'},
                {'X','X','X','X','X'}};

    //아래는 테스트 출력을 위한 코드입니다.
    cout<<findLargestSquare(board);
}
'''
  • (•́ ✖ •̀)
    알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)