if(rec[0][0]==rec[0][i-1] && rec[0][i-1]==rec[i-1][0] && rec[i-1][0]==rec[i-1][i-1]) {
System.out.println(i*i);
return;
}
(1) 처음에 아무 생각 없이 무조건 rec[0][0] x, y의 범위를 조절하였다. 다음과 같이 현재의 x, y에서 시작하여 범위를 조절해야한다.
if(rec[y][x]==rec[y][x+i-1] && rec[y][x+i-1]==rec[y+i-1][x] && rec[y+i-1][x]==rec[y+i-1][x+i-1]) {
System.out.println(i*i);
return;
}
if(l!=1) {
for(int i=l; i>1; i--) {
for(int y=0; y<n+1-i; y++) {
for(int x=0; x<m+1-i; x++) { //if 4 point equal?
if(rec[y][x]==rec[y][x+i-1] && rec[y][x+i-1]==rec[y+i-1][x] && rec[y+i-1][x]==rec[y+i-1][x+i-1]) {
System.out.println(i*i);
return;
}
}
}
}
System.out.println(1); //can't find answer>=2
}else { //l==1, answer: 1^2=1
System.out.println(1);
}
(2) 만약 l=2 일 때까지 정사각형을 찾지 못하면 답은 무조건 1이다. (가장 바깥의 for문의 조건을 i>0으로 해도 된다.)