전체 글 82

[코딩테스트/javaScript] 옹알이 (2)

우선 옹알이 할 수 있는 글자들의 배열을 만들어준 뒤,입력된 옹알이 (babbling)과 할 수 있는 글자(ava) // available이라는 뜻,,를 각각 순회하며 해당되는 글자는 삭제시키고, 모두 삭제되면 카운트 하는 방식으로 만들어줬다.function solution(babbling) { const ava = ["aya", "ye", "woo", "ma"] let count = 0; babbling.forEach((b) => { ava.forEach((a) => { if (b.includes(a)) { b = b.replace(a,''); } }) ..

[코딩테스트/javaScript] 로또의 최고 순위와 최저 순위

우선 0을 제외한 수, 당첨번호와 일치하는 수를 정의해주고,그 개수의 길이(맞춘 최저 수)와 0을 정답으로 치환한 수를 순위 배열에 매칭시켜서 답을 찾아낼 거다... (무슨말이지)function solution(lottos, win_nums) { let result = []; let lotto = lottos.filter((n) => n !== 0); //알아볼 수 있는 수들 let match = win_nums.filter((n) => lotto.includes(n)); //로또 번호와 일치하는 번호 let rank = [6,6,5,4,3,2,1] //순위 배열 let guess = lottos.length - lotto.length; //알아볼 수 없는 번호의 개수 ..

[코딩테스트/javaScript] 기사단원의 무기

일단 문제 자체가 이해하는데 시간이 오래 걸렸다...ㅎ공책 펴두고 적어가면서 정리했는데, 1 for문 사용하여 기사들 수 반복2 각 기사의 약수의 개수(즉 각 공격력)을 담은 배열 초기값 설정 (arr = [];)3 약수의 개수를 찾는 반복문, 개수를 (2번)배열에 push 해주기4 (2번의)약수의 개수 담은 배열에 .map 사용하여 초과값 power로 변경5 .reduce 사용하여 모든 값 더해주기 이렇게 정리했고, 순서대로 코드를 짜봤다.function solution(number, limit, power) { let factor = []; for (let i=1; i { if (p > limit) { return power; } retu..

[코딩테스트/javaScript] 덧칠하기

function solution(n, m, section) { //칠한 횟수 let result = 0; //마지막으로 칠한 section let painted = 0; for (let i=0; i= section[i]) continue; //칠하지 않은 부분 칠 painted = section[i] + (m-1); result ++; } return result;}칠한 횟수와 마지막으로 칠한 section 0으로 설정 이후 계속 칠해주되, 이미 칠한 부분이면 스킵해주는 형식으로 반복했다.그리고 횟수 리턴

[코딩테스트/javaScript] 2016년

우선 요일 배열을 만들어주고, 한달에 며칠씩 있는지에 대한 배열을 만들어 줬다.2016년 1월 1일은 금요일부터 시작되기 때문에, (인덱스 편의 상) 목요일부터 시작되는 배열로 만들었고,모든 일수를 더하여 7로 나눈 나머지 인덱스를 day 배열에서 뽑아오는 형태function solution(a, b) { const day = ['THU', 'FRI', 'SAT', 'SUN', 'MON', 'TUE', 'WED'] const lastD = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] if (a > 1) { let th = (lastD[a-2] + b) % 7 return day[th] } else { ..