문제 설명
머쓱이는 큰 종이를 1 x 1 크기로 자르려고 합니다. 예를 들어 2 x 2 크기의 종이를 1 x 1 크기로 자르려면 최소 가위질 세 번이 필요합니다.
정수 M, N이 매개변수로 주어질 때, M x N 크기의 종이를 최소로 가위질 해야하는 횟수를 return 하도록 solution 함수를 완성해보세요.
제한사항
0 < M, N < 100
종이를 겹쳐서 자를 수 없습니다.
나의 코드
class Solution {
public int solution(int M, int N) {
int answer = 0;
if(M==1 && N==1) {
answer = 0;
} else {
answer = M * N - 1;
}
return answer;
}
}
느낀 점
문제만 읽고 알고리즘을 찾기는 많이 힘들었다.
M=2, N=2일 때 result가 3,
M=2, N=5일 때 result가 9,
M=1, N=1일 때 result가 0인 입출력 예를 참고하여
M=1이고 N=1일 때는 0,
나머지는 M*N-1인 값이 결과값으로 나오는 것을 도출해냈다.