알고리즘🅰/제주코딩베이스캠프 프로그래머스 문제 풀이

[알고리즘 풀이_Lv0] 중복된 숫자 개수, 피자 나눠 먹기, 짝수 홀수 개수, 배열 두배 만들기

개발조각 2023. 3. 10. 15:12
728x90
반응형

*제주코딩베이스캠프의 JavaScript 알고리즘 100일 챌린지를 참고로 정리하고 있습니다.*

중복된 숫자 개수

문제


https://school.programmers.co.kr/learn/courses/30/lessons/120583

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

정수가 담긴 배열 array와 정수 n이 매개변수로 주어질 때, 

array에 n이 몇 개 있는 지를 return 하도록 solution 함수를 완성해보세요.

 

소스코드


function solution(array, n) {
    return array.filter(v=>v===n).length;
}

 

 

https://www.youtube.com/watch?v=Z53sFbnNZok&list=PLkfUwwo13dlWZxOdbvMhkzhAowaiEjuGS&index=8 


피자 나눠 먹기 (1)

문제


https://school.programmers.co.kr/learn/courses/30/lessons/120814

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

머쓱이네 피자가게는 피자를 일곱 조각으로 잘라 줍니다. 

피자를 나눠먹을 사람의 수 n이 주어질 때, 

모든 사람이 피자를 한 조각 이상 먹기 위해 필요한 피자의 수를 return 하는 solution 함수를 완성해보세요.

 

소스코드


// 방법1
function solution(n) {
    var answer = 0;
    if(n/7 === ~~(n/7)){ // 7로 딱 떨어지냐
        return n/7;
    }
    return ~~(n/7) + 1; // 올림을 해야된다.
}
// 방법2
function solution(n) {
    return Math.ceil(n/7);
}

 

 

https://www.youtube.com/watch?v=RU9B3LHRJLY&list=PLkfUwwo13dlWZxOdbvMhkzhAowaiEjuGS&index=9 


짝수 홀수 개수

문제


https://school.programmers.co.kr/learn/courses/30/lessons/120824

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

정수가 담긴 리스트 num_list가 주어질 때, 

num_list의 원소 중 짝수와 홀수의 개수를 담은 배열을 return 하도록 solution 함수를 완성해보세요.

 

 

소스코드


// 방법1
function solution(num_list) {
    var answer = [0, 0];
    for(let item of num_list){
        if(item % 2 == 0){
            answer[0] += 1;
        }else{
            answer[1] += 1;
        }
    }
    return answer;
}

item % 2는 0(짝수) 아니면 1(홀수)이다.

// 방법2
function solution(num_list) {
    var answer = [0, 0];
    for(let item of num_list){
        answer[item % 2] += 1;
    }
    return answer;
}

 

 

https://www.youtube.com/watch?v=wvyIu6ubQ48&list=PLkfUwwo13dlWZxOdbvMhkzhAowaiEjuGS&index=10 


배열 두배 만들기

문제


https://school.programmers.co.kr/learn/courses/30/lessons/120809

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

정수 배열 numbers가 매개변수로 주어집니다. 

numbers의 각 원소에 두배한 원소를 가진 배열을 return하도록 solution 함수를 완성해주세요.

 

소스코드


function solution(numbers) {
    return numbers.map(v=>v*2);
}

map은 데이터를 뽑아낼 때 많이 사용한다.

 

https://www.youtube.com/watch?v=rcDcpNASNCw&list=PLkfUwwo13dlWZxOdbvMhkzhAowaiEjuGS&index=11 

 

728x90
반응형