본문 바로가기
코딩일기/JS<자바스크립트>

자바 스크립트 <피자 나눠 먹기 (1)> 프로그래머스

by 2pro.e_pro 2024. 5. 31.
728x90
반응형

이번 아티클에서는 자바 스크립트 <피자 나눠 먹기 (1)>  프로그래머스 문제를 풀어보자

 

문제는 아래와 같다.

 

 

문제의 방향성은 피자를 나눠 먹는 사람의 수가 " n "으로 주어질때

모든 사람이 피자를 한 조각 이상 먹기 위해 필요한 피자의 수를 구하는 코드를 구현해야한다.

 

입출력 예 설명을 통해 조건이 주어졌다.

 

< 입출력 예 >

n result(결과
7 1
1 1
15 3

 

  입출력 예 #1

      • 7명이 최소 한 조각씩 먹기 위해서 최소 1판이 필요합니다.

 

  입출력 예 #2

      •  1명은 최소 한 조각을 먹기 위해 1판이 필요합니다.

 

  입출력 예 #3

      •  15명이 최소 한 조각씩 먹기 위해서 최소 3판이 필요합니다.

 

결국 7명이 1판을 소화하는 조건이며 15명은 2판의 조건인 14명을 초과하기에 3판이 필요하다는 것.

그래서 구현한 코드는 아래와 같다.

 

function solution(n) {
  var answer = 0;
  if (n % 7 === 0) {
    return n / 7;
  } else {
    return parseInt(n/7) + 1;
  }
  return answer;
}

 

해석하자면 if - else 문을 활용하여

1. if 만약에 n 이라는 사람의 수가 7 로 나뉘었을때 0과 === 같다면
    n / 7이라는 결과로 리턴된다.

2. else 그게 아니면 n/7에 +1을 해야하는데
    이때 1판의 값이 아닌 2판의 값으로 올라가니 소수점이 생길것이고 이것을
3. parseInt() 메소드를 통해 소숫점을 제거하고 정수로 만든다.

 

GPT의 첨언으로 보충하겠다.

 

 

다른사람은 어떻게 풀었을까?

 

function solution(n) {
    return n % 7 === 0 ? n / 7 : parseInt(n / 7) + 1;
}

삼항 연산자로 센스 있게 세련되게 푸는 분들을 보자면 매력적이면서도 허탈해진다.

 

오늘도 머쓱이 탈출을 위해 열심히 업 텐션 합시다.

728x90
반응형

댓글