코딩테스트 입문 0단계
문제1 피자 나눠먹기(1)
머쓱이네 피자가게는 피자를 일곱 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 주어질 때, 모든 사람이 피자를 한 조각 이상 먹기 위해 필요한 피자의 수를 return 하는 solution 함수를 완성해보세요.
제한사항
- 1 ≤ n ≤ 100
입출력 예
n | result |
7 | 1 |
1 | 1 |
15 | 3 |
function solution(n) {
var answer = Math.ceil(n / 7);
return answer;
}
n을 7로 나눈 다음 Math.ceil을 이용하여 올림해 구해줍니다.
문제2 피자 나눠먹기(2)
머쓱이네 피자가게는 피자를 여섯 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 매개변수로 주어질 때, n명이 주문한 피자를 남기지 않고 모두 같은 수의 피자 조각을 먹어야 한다면 최소 몇 판을 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요.
제한사항
- 1 ≤ n ≤ 100
입출력 예
n | result |
6 | 1 |
10 | 5 |
4 | 2 |
function solution(n) {
var answer = 0;
let pizzaCount = 1;
while(true) {
if(pizzaCount * 6 % n === 0) {
answer = pizzaCount;
break;
}
pizzaCount = pizzaCount + 1;
}
return answer;
}
변수 설정하고 pizzaCount의 초기값을 1로 설정합니다.
while(true)로 조건이 항상 참으로 지정합니다.
피자 조각 수 pizzaCount를 6으로 곱한 값이 n으로 나누어 떨어지는지 확인합니다
만약 나누어 떨어진다면, pizzaCount를 answer에 할당하고 루프를 종료합니다
그렇지 않다면, pizzaCount를 1 증가시킵니다
반복문을 계속 진행하고 최종적으로 구한 최소 피자 개수인 answer를 반환합니다
문제3 피자 나눠먹기(3)
머쓱이네 피자가게는 피자를 두 조각에서 열 조각까지 원하는 조각 수로 잘라줍니다. 피자 조각 수 slice와 피자를 먹는 사람의 수 n이 매개변수로 주어질 때, n명의 사람이 최소 한 조각 이상 피자를 먹으려면 최소 몇 판의 피자를 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요.
제한사항
- 2 ≤ slice ≤ 10
- 1 ≤ n ≤ 100
입출력 예
slice | n | result |
7 | 10 | 2 |
4 | 12 | 3 |
function solution(slice, n) {
var answer = Math.ceil(n / slice);
return answer;
}
사람 수 n을 조각 수 slice로 나눈 뒤 Math.ceil로 반올림하여 구해줍니다.
문제4 배열의 평균값
정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소의 평균값을 return하도록 solution 함수를 완성해주세요.
제한사항
- 0 ≤ numbers의 원소 ≤ 1,000
- 1 ≤ numbers의 길이 ≤ 100
- 정답의 소수 부분이 .0 또는 .5인 경우만 입력으로 주어집니다.
입출력 예
numbers | result |
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] | 5.5 |
[89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99] | 94.0 |
function solution(numbers) {
let sum = 0;
let cnt = 0;
while(cnt < numbers.length) {
sum = sum + numbers[cnt];
cnt = cnt + 1;
}
return sum / numbers.length;
}
변수 설정을하고 cnt가 numbers 배열의 길이보다 작은 동안 반복합니다
배열의 각 숫자를 sum에 더합니다
cnt 값을 1 증가시킵니다
최종적으로 sum을 numbers 배열의 길이로 나눈 평균을 반환합니다