ㅁㅇㅇ
ㅇㅁㅇ
ㅇㅁㅇ 이런식이라든가

ㅁㅇㅁ 
ㅇㅁㅇ 
ㅇㅇㅇ
아 그러고보니
ㅁㅇㅇ
ㅇㅇㅇ
ㅁㅇㅇ
ㅁㅇㅇ 4칸짜리 유형도 존재하네


라고했는데 

12 3

8ㅁ4

765

기준으로  방향성으로 잡으면 맨위는 기준점에서 5 6 방향성을 가지고 두번째는 5 3 세번째는 1이 패턴이다르고 그밑1과 또밑1이 같은패턴이라고 가정하고 탐색하면되잖아


int patternMatchData[3][patternLen] = {

{5,6}

{5,3}

{-1,1,1} -value일때는 1번방향에 패턴이없을때

}

bool patternMisMatch[wlen][heln][3] =>true 로 멤셋 


findPattern(w,h,patternIdx){

switch(patternIdx){

case 0 : 

break;

case 1 : 

break;

case 2 : 

break;

}

}

foreach( w in wlen){

foreach(h in heln){

foreach(patternidx){

if(patternMisMatch[w][h][pattenIdx] && data_arr[w][h] == ㅁ){

findPattern(w,h,patternIdx);

}

}

}

}


이런식으로 짜서 case0번패턴검색하고 1번패턴 검샣가고 2번패턴검색하는형식으로 만듬되지않을까?