728x90
반응형
프로그래머스 : JavaScript 알고리즘 100일 챌린지 17일차
- 프로그래머스 : https://school.programmers.co.kr/learn/challenges/training?order=acceptance_desc
- 유트브 참고 : https://www.youtube.com/watch?v=RMmOU2u-_as&list=PLkfUwwo13dlWZxOdbvMhkzhAowaiEjuGS
코딩테스트 입문 Day17
1. 숫자 찾기 : 정수 num과 k가 매개변수로 주어질 때, num을 이루는 숫자 중에 k가 있으면 num의 그 숫자가 있는 자리 수를 return하고 없으면 -1을 return 하도록 solution 함수를 완성해보세요.
function solution(num, k) {
var answer = 0;
return answer;
}
길라잡이
- 데이터를 수정해서 답을 구해보세요.
- 예시
num | k | result |
29183 | 1 | 3 |
232443 | 4 | 4 |
123456 | 7 | -1 |
답 확인하기
function solution(num, k) {
const strNum = String(num);
for(let i=0; i<strNum.length; i++){
const item = strNum[i];
if(item === String(k)){
return i+1;
}
}
return -1;
}
2. n의 배수 고르기 : 정수 n과 정수 배열 numlist가 매개변수로 주어질 때, numlist에서 n의 배수가 아닌 수들을 제거한 배열을 return하도록 solution 함수를 완성해주세요.
function solution(n, numlist) {
var answer = [];
return answer;
}
길라잡이
- 데이터를 수정해서 답을 구해보세요.
- 예시
n | numlist | result |
3 | [4, 5, 6, 7, 8, 9, 10, 11, 12] | [6, 9, 12] |
5 | [1, 9, 3, 10, 13, 5] | [10, 5] |
12 | [2, 100, 120, 600, 12, 12] | [120, 600, 12, 12] |
답 확인하기
function solution(n, numlist) {
var answer = [];
for(let i=0; i<numlist.length; i++){
const item = numlist[i];
if(item % n === 0){
answer.push(item);
}
}
return answer;
}
3. 자릿수 더하기 : 정수 n이 매개변수로 주어질 때 n의 각 자리 숫자의 합을 return하도록 solution 함수를 완성해주세요.
function solution(n) {
var answer = 0;
return answer;
}
길라잡이
- 데이터를 수정해서 답을 구해보세요.
- 예시
n | result |
1234 | 10 |
930211 | 16 |
답 확인하기
function solution(n) {
let sum = 0;
const strNum = String(n);
for(let i=0; i<strNum.length; i++){
const item = strNum[i];
sum += Number(item);
}
return sum;
}
4. OX퀴즈 : 덧셈, 뺄셈 수식들이 'X [연산자] Y = Z' 형태로 들어있는 문자열 배열 quiz가 매개변수로 주어집니다. 수식이 옳다면 "O"를 틀리다면 "X"를 순서대로 담은 배열을 return하도록 solution 함수를 완성해주세요.
function solution(quiz) {
var answer = [];
return answer;
}
길라잡이
- 데이터를 수정해서 답을 구해보세요.
- 예시
quiz | result |
["3 - 4 = -3", "5 + 6 = 11"] | ["X", "O"] |
["19 - 6 = 13", "5 + 66 = 71", "5 - 15 = 63", "3 - 1 = 2"] | ["O", "O", "X", "O"] |
답 확인하기
function solution(quiz) {
var answer = [];
for(let i=0; i<quiz.length; i++){
const item = quiz[i];
const itemArr = item.split(' ');
const firstNum = Number(itemArr[0]);
const op = itemArr[1];
const secondNum = Number(itemArr[2]);
const result = Number(itemArr[4]);
if(op === '+'){
if(firstNum + secondNum === result){
answer.push("O");
} else {
answer.push("X");
}
} else {
if(firstNum - secondNum === result){
answer.push("O");
} else {
answer.push("X");
}
}
}
return answer;
}
728x90
반응형