1. 나이 출력
정답
function solution(age) {
var answer = 0;
answer = 2022 - age +1;
return answer;
}
풀이
2022년 기준이므로 2022에 나이를 빼주고 1을 더해줘야 원하는 값이 나오게 된다.
2. 양꼬치
정답
function solution(n, k) {
let mok = Math.floor(n / 10)
return ((k - mok) * 2000) + (n * 12000);
}
풀이
Math.floor 메소드를 사용해 몫을 구해주고 몫을 음료 개수와 빼줘 가격을 낮춰 음료 가격을 구해주고 인분과 12000을 곱해 양꼬치 가격을 구해줘 둘이 더한 값을 출력해 주었다.
3. 두수의 곱
정답
function solution(num1, num2) {
var answer = 0;
answer = num1 * num2;
return answer;
}
풀이
말 그대로 매개변수 둘을 곱해서 출력해준다.
4. 몫 구하기
정답
function solution(num1, num2) {
var answer = 0;
answer = Math.floor(num1/num2);
return answer;
}
풀이
몫을 구하기 위해 Math.floor 메소드를 사용하였다.
5. 피자 나눠 먹기
정답
function solution(n) {
let person = n
let pizza = Math.floor(person/7)
if(person % 7 == 0){
return pizza;
}else{
return pizza + 1;
}
}
풀이
사람 수와 7조각을 나눴을 때 나머지가 0이 나오면 피자 수는 사람 수의 7의 배수로 1씩 증가하게 된다. else로는 pizza +1 을 해줘 최소 한 조각을 먹게 출력해준다.
6. 편지
정답
function solution(message) {
let length = message.length * 2
return length;
}
풀이
message 값의 length를 구해 *2를 리턴해주면 편지지의 길이가 나오게 된다.
7. 문자열 내 마음대로 정렬하기
정답
function solution(strings, n) {
var answer = [];
for (var i = 0; i < strings.length; i++) {
var a = strings[i][n];
strings[i] = a + strings[i];
}
strings.sort();
for (var j = 0; j < strings.length; j++) {
strings[j] = strings[j].replace(strings[j][0],"");
answer.push(strings[j])
}
return answer;
}
풀이
우선 첫번째 for문에서 a의 변수를 지정해주고 인덱스[i]의 n 번째 값들을 넣어준다. 그 후 인덱스[i]의 n번째 값 + 인덱스[i] 값을 해주고 for문은 끝나게 된다. for문이 끝나면 strings 매개변수를 sort() 함수를 통해 오름차순 정렬해주고 정렬하기 위해 썼던 a 를 제거해주기 위해 for문을 한번 더 돌린다. 2번째 for문에서 replace 함수를 이용해 인덱스[0]번째 값을 공백으로 넣어주고 answer에 푸시해줘 값을 리턴해준다.
8. 세균증식
정답
function solution(n, t) {
var answer = 0;
for(let i = 1; i<= t; i++){
n *= 2;
}
return n;
}
풀이
for문의 조건은 우선 1시간 ~ t시간이 되기 때문에 for(let i = 1; i<= t; i++) 로 넣어줬다.
1시간 마다 세균은 두배 증식하기 때문에 for문 한번당 n*=2를 해주면 세균의 수를 구할 수 있다.
'Algorithms' 카테고리의 다른 글
프로그래머스 - 코딩테스트 입문 (3) (0) | 2023.12.11 |
---|---|
프로그래머스 - 코딩테스트 입문(2) (0) | 2023.12.09 |