TIL10-03 js 오늘의 코딩테스트들

김태혁·2023년 1월 21일
0

TIL

목록 보기
32/205
  1. 문자열 my_string과 문자 letter이 매개변수로 주어집니다. my_string에서 letter를 제거한 문자열을 return하도록 solution 함수를 완성해주세요.
function solution(my_string, letter) {
    let string = my_string.split("");//문자를 배열에 집어넣는다.
    for (let i = 0; i < string.length; i++) {
        if ( string[i] == letter) {
            string.splice(i,1); //splice() 주어진 값과 같은 문자의 위치를 찾아 제거한다.
            i-- //제거 후 배열의 길이가 달라졌기 때문에 i를 감소시킨다. 
        }
    }
    return string.join(""); //다시 문자열로 반환해준다. 
}
  1. 정수 n이 매개변수로 주어질 때, n 이하의 홀수가 오름차순으로 담긴 배열을 return하도록 solution 함수를 완성해주세요.
function solution(n) {
    let answer = [];
    for (let i = 1; i <=n; i++ )  {
        if ( i%2 !== 0)  { //홀수는 2로 나눴을 경우 나머지가 0이 아니다.
            answer.push(i); //홀수를 배열의 집어 넣는다.
        } 
    } return answer;
}   
  1. 정수 배열 numbers가 매개변수로 주어집니다. numbers의 각 원소에 두배한 원소를 가진 배열을 return하도록 solution 함수를 완성해주세요.
function solution(numbers) {
    let answer = [];
    for (let i = 0; i < numbers.length; i++) {
        answer.push(numbers[i]*2);  //배열에 특정 위치의 숫자에 2를 곱해주고 다시 배열에 집어 넣는다.
    }
    return answer;
}
  1. 글자 한 자 한 자를 가로 2cm 크기로 적으려고 하며, 편지를 가로로만 적을 때, 축하 문구 message를 적기 위해 필요한 편지지의 최소 가로길이를 return 하도록 solution 함수를 완성해주세요.
function solution(message) {
    return message.length * 2;
}
  1. 1, 2, 7, 10, 11의 중앙값은 7입니다. 정수 배열 array가 매개변수로 주어질 때, 중앙값을 return 하도록 solution 함수를 완성해보세요.
function solution(array) {
    array.sort((a,b) =>(a-b));
    return array[Math.floor(array.length/2)];
}   
  1. 머쓱이네 옷가게는 10만 원 이상 사면 5%, 30만 원 이상 사면 10%, 50만 원 이상 사면 20%를 할인해줍니다.
    구매한 옷의 가격 price가 주어질 때, 지불해야 할 금액을 return 하도록 solution 함수를 완성해보세요.
function solution(price) {
    if (price >=100000 && price < 300000) {
        return Math.floor(price * 0.95);
    }
    if (price >=300000 && price < 500000) {
        return Math.floor(price * 0.90);
    }
    if (price >=500000) {
        return Math.floor(price * 0.80)
    } else {
        return price
    }
}
  1. 어떤 자연수를 제곱했을 때 나오는 정수를 제곱수라고 합니다. 정수 n이 매개변수로 주어질 때, n이 제곱수라면 1을 아니라면 2를 return하도록 solution 함수를 완성해주세요.
function solution(n) {
    for (let i= 0; i <= n; i++) {
      if(i*i == n) {
          return 1; 
      }     
    } return 2;      
}
  1. 문자열 my_string이 매개변수로 주어집니다. my_string안의 모든 자연수들의 합을 return하도록 solution 함수를 완성해주세요.
function solution(my_string) {
    let answer = 0;
    let str = my_string.replace(/[^0-9]/g, '');
    for (let i = 0; i < str.length; i++) {
        answer += parseInt(str[i]);
    }
    return answer;
}
  1. 개미 군단이 사냥을 나가려고 합니다. 개미군단은 사냥감의 체력에 딱 맞는 병력을 데리고 나가려고 합니다. 장군개미는 5의 공격력을, 병정개미는 3의 공격력을 일개미는 1의 공격력을 가지고 있습니다. 예를 들어 체력 23의 여치를 사냥하려고 할 때, 일개미 23마리를 데리고 가도 되지만, 장군개미 네 마리와 병정개미 한 마리를 데리고 간다면 더 적은 병력으로 사냥할 수 있습니다. 사냥감의 체력 hp가 매개변수로 주어질 때, 사냥감의 체력에 딱 맞게 최소한의 병력을 구성하려면 몇 마리의 개미가 필요한지를 return하도록 solution 함수를 완성해주세요.
function solution(hp) {
    let generalAnt = parseInt(hp/5);
    let soldierAnt = parseInt((hp%5)/3);
    let Ant = (hp%5)%3;
    return generalAnt+soldierAnt+Ant;
}
  1. 정수 n이 매개변수로 주어질 때 n의 각 자리 숫자의 합을 return하도록 solution 함수를 완성해주세요
function solution(n) {
    let answer = n.toString().split(""); //숫자를 문자열로 바꾸고, 배열로 변환했다.
    let count = 0;
    for (let i = 0; i < answer.length; i++) {
        count += parseInt(answer[i]); // 각배열의 숫자를 정수화 해주고, 카운트에 더했다.
    }
    return count;
}
  1. 문자열 str1, str2가 매개변수로 주어집니다. str1 안에 str2가 있다면 1을 없다면 2를 return하도록 solution 함수를 완성해주세요.
function solution(str1, str2) {
    let answer = str1.includes(str2); // includes()를 이용해 특정 문자열이 있는지 확인한다.
    if (answer == true) { //확인 결과가 true면 1로 반환 false면 2로 반환한다.
        return 1
    } else {
        return 2
    }
}
profile
도전을 즐기는 자

0개의 댓글