[알고리즘 풀이_Lv0] 중복된 숫자 개수, 피자 나눠 먹기, 짝수 홀수 개수, 배열 두배 만들기
*제주코딩베이스캠프의 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