Just Do IT!

[프로그래머스 Level 0] 120821 - 120825 (JavaScript) 본문

코딩테스트 준비/프로그래머스

[프로그래머스 Level 0] 120821 - 120825 (JavaScript)

MOON달 2022. 11. 16. 17:45
728x90
반응형

120821. 배열 뒤집기

문제 설명
정수가 들어 있는 배열 num_list가 매개변수로 주어집니다. num_list의 원소의 순서를 거꾸로 뒤집은 배열을 return하도록 solution 함수를 완성해주세요.

제한사항
1 ≤ num_list의 길이 ≤ 1,000
0 ≤ num_list의 원소 ≤ 1,000

입출력 예
num_list result
[1, 2, 3, 4, 5] [5, 4, 3, 2, 1]
[1, 1, 1, 1, 1, 2] [2, 1, 1, 1, 1, 1]
[1, 0, 1, 1, 1, 3, 5] [5, 3, 1, 1, 1, 0, 1]
function solution(num_list) {
    var answer = [];
    for (let i = num_list.length - 1; i >= 0; i--) {
        answer.push(num_list[i])
    }
    return answer;
}

 

 

 

120822. 문자열 뒤집기

문제 설명
문자열 my_string이 매개변수로 주어집니다. my_string을 거꾸로 뒤집은 문자열을 return하도록 solution 함수를 완성해주세요.

제한사항
1 ≤ my_string의 길이 ≤ 1,000

입출력 예
my_string result
"jaron" "noraj"
"bread" "daerb"
function solution(my_string) {
    return my_string.split('').reverse().join('');
}
  • 단어 하나씩 나눠서 뒤집고 다시 합친다

 

 

 

120823. 직각삼각형 출력하기

문제 설명
"*"의 높이와 너비를 1이라고 했을 때, "*"을 이용해 직각 이등변 삼각형을 그리려고합니다. 정수 n 이 주어지면 높이와 너비가 n 인 직각 이등변 삼각형을 출력하도록 코드를 작성해보세요.

제한사항
1 ≤ n ≤ 10

입출력 예
입력 #1
3
출력 #1
*
**
***
const readline = require('readline');
const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

let input = [];

rl.on('line', function (line) {
    input = line.split(' ');
}).on('close', function () {
    let num = Number(input[0]);
    let star = '';
    
    for (let i = 0; i < num; i++) {
        for (let j = 0; j <= i; j++) {
            star += '*'
        }
        star += '\n'
    }
    
    console.log(star)
});

 

 

 

120824. 짝수 홀수 개수

문제 설명
정수가 담긴 리스트 num_list가 주어질 때, num_list의 원소 중 짝수와 홀수의 개수를 담은 배열을 return 하도록 solution 함수를 완성해보세요.

제한사항
1 ≤ num_list의 길이 ≤ 100
0 ≤ num_list의 원소 ≤ 1,000

입출력 예
num_list answer
[1, 2, 3, 4, 5] [2, 3]
[1, 3, 5, 7] [0, 4]
function solution(num_list) {
    var answer = [];
    let odd = 0;
    let even = 0;

    for (let i = 0; i < num_list.length; i++) {
        if (num_list[i] % 2 === 0) {
            even++;
        }
        else {
            odd++;
        }
    }
    answer.push(even)
    answer.push(odd)

    return answer;
}

+) 뭔가 더 효율적이고 짧은 코드가 있을 것 같은데, 조금 더 고민해볼 문제다.

 

 

 

120825. 문자 반복 출력하기

문제 설명
문자열 my_string과 정수 n이 매개변수로 주어질 때, my_string에 들어있는 각 문자를 n만큼 반복한 문자열을 return 하도록 solution 함수를 완성해보세요.

제한사항
2 ≤ my_string 길이 ≤ 5
2 ≤ n ≤ 10
"my_string"은 영어 대소문자로 이루어져 있습니다.

입출력 예
my_string n result
"hello" 3 "hhheeellllllooo"
function solution(my_string, n) {
    return [...my_string].map(char => char.repeat(n)).join('');
}
  • map() 이용해서 배열처럼 문자열을 나눠서 n씩 repeat
728x90