코딩테스트 : 종이 자르기

juhee·2025년 6월 25일

코딩테스트

목록 보기
1/15

문제

큰 종이를 1 x 1 크기로 자르려고 합니다. 예를 들어 2 x 2 크기의 종이를 1 x 1 크기로 자르려면 최소 가위질 세 번이 필요합니다.

정수 M, N이 매개변수로 주어질 때, M x N 크기의 종이를 최소로 가위질 해야하는 횟수를 return 하도록 solution 함수를 완성해보세요.

제한사항

  • 0 < M, N < 100
  • 종이를 겹쳐서 자를 수 없습니다.

입출력 예

MNresult
223
259
110

문제 특징

  • 겹쳐서 자를 수 없음
  • 가위질 횟수 최소
  • M x N 크기의 종이를 1 x 1로 자름

-> 최소한의 연산으로 M x N 개의 조각을 만들자

접근 방식

  • 가위질을 한 번 할 때마다 조각 수가 1개 늘어남
  • 처음 1개에서 시작해서 M x N개가 되려면 몇 번 늘려야 하나?

-> M x N - 1

문제 유형

수학적 사고 / 그리디 / 패턴 인식

시간 복잡도

O(1)

코드

def solution(M, N):
	return M * N - 1

0개의 댓글