본문 바로가기

분류 전체보기

(74)
[프로그래머스] 기사단원의 무기 https://school.programmers.co.kr/learn/courses/30/lessons/136798 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr접근방법number의 길이만큼 반복문을 돌려,1~number까지의 숫자들이 가진 약수의 개수를 구한다. 각 데이터가 limit 값을 초과하는지 판단하여 power 또는 count 값을 answer에 더해준다.function solution(number, limit, power) { var answer = 0; let numberArr = [] for(var i = 1 ; i = j){ if(i % j ..
[프로그래머스] 명예의 전당(1) https://school.programmers.co.kr/learn/courses/30/lessons/138477 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr접근방법1. k 길이 만큼의 데이터가 없는경우 result 배열에 그대로 점수를 추가한다.2. k 길이 이상인경우 가장 낮은 점수(sort 정렬 후 0번째 데이터)와 비교하여 더 높은 점수로 교체한다.3.  result 배열의 최소값을 answer 배열에 추가한다. 제출function solution(k, score) { var answer = []; var result = []; for(let i = 0; i a-b)..
[프로그래머스] 문자열 나누기 https://school.programmers.co.kr/learn/courses/30/lessons/140108 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr접근방법 1. 문자열을 순회하며 첫 번째 문자를 기준으로 같은 문자의 개수를 initCount에, 다른 문자의 개수를 targetCount에 기록한다.2. initCount와 targetCount가 같아질 때마다 부분 문자열을 완성하고 배열 arr에 저장한다.3.순 회를 마친 후에도 남아 있는 문자가 있다면 나머지 문자열을 하나의 부분 문자열로 간주하여 개수를 추가한다. 제출 function solution(s) { var answer =..
[프로그래머스] 가장 가까운 같은 글자 https://school.programmers.co.kr/learn/courses/30/lessons/142086 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr접근방법1. s.substr(0,i)를 사용하여 0번부터 현재 i번째 바로 전까지의 문자열을 가져온다.2. lastIndexof(s[i])를 사용해, s[i]가 해당 부분 문자열에서 가장 마지막에 나타난 위치를 찾는다.3. -1인 경우(존재하지 않는경우) 그대로 -1을 리턴하고, 그렇지 않은 경우 뒤에서부터 거리를 계산하여 return 한다.제출function solution(s) { var answer = []; for(let i ..
[프로그래머스] 크기가 작은 부분 문자열 https://school.programmers.co.kr/learn/courses/30/lessons/147355 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr접근방법 1. 문자열 t에서 길이가 p.length인 모든 부분 문자열을 생성.2. 각 부분 문자열이 p보다 작거나 같은지 확인.3. 조건을 만족하는 부분 문자열의 개수를 카운트하여 반환. function solution(t, p) { var answer = 0; let tList = []; for(let i = 0 ; i  결과 :100점
[프로그래머스] 둘만의 암호 https://school.programmers.co.kr/learn/courses/30/lessons/155652 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr접근방법s와 skip배열을 ASCII 코드 값으로 변환하여s 배열의 각 문자가 skip배열에 포함되어 있으면 그대로 +1, skip배열에 포함되어있으면 realIndex를 증가시켜 index에 도달하도록 만든뒤 ASCII값을 문자로 반환하여 반환하였다. 제출function solution(s, skip, index) { var answer = ''; const shipList = skip.split("").map(item =>..
[프로그래머스] 카드 뭉치 https://school.programmers.co.kr/learn/courses/30/lessons/159994 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr접근방법 cards1Index와 cards2Index 두 개의 포인터를 사용하여 각각 cards1과 cards2 리스트를 추적한다. goal 배열만큼 반복하여 해당 요소가 존재하는지 확인, 존재 시 해당 리스트의 포인터를 증가시킨다.존재하지 않는 경우 "No"를 return 한다. 1차 제출function solution(cards1, cards2, goal) { var answer = ''; var cards1Index = ..
[프로그래머스] 대충 만든 자판 https://school.programmers.co.kr/learn/courses/30/lessons/160586 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr접근방법 1. targets에 해당하는 문자열을 한글자씩 배열로 만든다.2. keymap의 각 배열에 해당 문자열이 몇번째 index에 존재하는지 indexOf로 조회한다.3. -1인경우 해당하는 값이 없다고 판단, filter처리를 했을때 length가 0 이라면 -1을 리턴한다.4. length가 0 이상인경우, sort처리 후 가장 작은 데이터가 최소값이라고 판단, sum에 값을 더해준다.   1차 제출function solution(ke..