[프로그래머스 / Lv.0] 종이 자르기 (C#)

2023. 2. 17. 06:58·프로그래머스(Programmers)/C# 풀이

| 문제 설명 ❓

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

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


| 제한 사항 ❌

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

| 입출력 예 💬

M N result
2 2 3
2 5 9
1 1 0

| 입출력 예 설명 💬

입출력 예 #1

  • 본문과 동일합니다.

입출력 예 #2

  • 가로 2 세로 5인 종이는 가로로 1번 세로로 8번 총 가위질 9번이 필요합니다.

입출력 예 #3

  • 이미 1 * 1 크기이므로 0을 return 합니다.

| 풀이 🔥

⚠️ 한 번씩 읽어주세요 ⚠️

제 개인의 풀이 방법이며 틀린 풀이 방법 일수도, 더 나은 풀이법이 존재할 수도 있습니다!

전체 코드는 깃헙 링크 혹은 하단 접은 글을 펼쳐 확인가능하며, 복붙이 아닌 참고용 코드입니다

 

 

이번 문제에 경우는 매우 쉬웠던거 같습니다. 예시 문제 데이터들만 보았을때 재밌게도 간단한 규칙들이 보입니다.

자른 횟수 : 가로(M) x 세로(N) -1 

위 공식과 딱 맞아 떨어집니다. (프로그래머스 설명의 입출력 예시 데이터에도 그대로 적용됨)

따라서 1x1인 경우만 if문으로 처리하고, 외에 경우는 공식을 집어 넣어서 해결하였습니다.

 

 

[깃헙 / Github]

😻 댓글과 공감 한 번씩 감사드립니다 😻


| 전체 코드 🔎

더보기
using System;

public class Solution {
    public int solution(int M, int N) {
        int answer = 0;
        
        // M = 1, N = 1 일경우 자르지 않아도 되므로 0
        // 이외에 경우 M * N - 1 번 만큼 가위질을 해야함
        if(M == 1 && N == 1)
        {
            answer = 0;
        }
        else
        {
            answer = M * N - 1;    
        }
        
        return answer;
    }
}
저작자표시 변경금지 (새창열림)
'프로그래머스(Programmers)/C# 풀이' 카테고리의 다른 글
  • [프로그래머스 / Lv.0] 잘라서 배열로 저장하기 (C#)
  • [프로그래머스 / Lv.0] 문자열 밀기 (C#)
  • [프로그래머스 / Lv.0] 연속된 수의 합 (C#)
  • [프로그래머스 / Lv.0] 다음에 올 숫자 (C#)
프로포폴
프로포폴
Unity 클라이언트 개발자가 운영 하는 개발 블로그 입니다
  • 프로포폴
    약파는개발자
    프로포폴
  • 전체
    오늘
    어제
    • 분류 전체보기 (67)
      • 유니티 (21)
        • 공부 (0)
        • 튜토리얼 (0)
        • 에셋 (3)
        • 문제 해결 (2)
        • 작업 (16)
      • 언리얼(Unreal) (1)
        • 문제 해결 (1)
      • 백준 (20)
        • 브론즈5 (Bronze V) (20)
      • 프로그래머스(Programmers) (23)
        • C# 풀이 (23)
      • C# (0)
        • 팁 (Tip) (0)
      • 컴퓨터 과학(CS) (2)
        • 알고리즘 (1)
        • 자료구조 (1)
  • 블로그 메뉴

    • 홈
    • 글쓰기
    • 태그
    • 유니티
    • 알고리즘
  • 링크

    • Github
  • 공지사항

  • 인기 글

  • 태그

    유니티
    알고리즘
    프로그래머스_C#
    픽셀리마인드
    프로그래머스_Lv.0
    프로그래머스
    SHA
    백준
    컴퓨터과학
    C++
    projecta
    c#
    개발일지
    탐색(Search)
    CS
    Bronze V
    baekjoon
    브론즈5
    Unity
    작업
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
프로포폴
[프로그래머스 / Lv.0] 종이 자르기 (C#)
상단으로

티스토리툴바