일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- express
- 개인 프로젝트
- 리액트
- Hello Coding HTML5+CSS3
- 자바스크립트
- ES6
- 레인지 슬라이더
- CSS
- 모듈 배포하기
- 알고리즘
- 인사이드 자바스크립트
- 우아한테크캠프 4기
- 자바스크립트 객체
- 회고의 회고
- npm
- 우아한형제들
- AWS
- 코드스쿼드
- 토이프로젝트
- 자바
- html
- 주간 회고
- 프로그래머스
- 토이 프로젝트
- 네이버 테크 콘서트
- 우아한테크캠프
- 함수
- toast
- 러닝 자바스크립트
- 우아한테크코스
- Today
- Total
목록알고리즘 (46)
블로그
출처 : 프로그래머스 알고리즘 코딩테스트 Level.2 https://programmers.co.kr/learn/courses/30/lessons/49993?language=javascript 풀이 과정 순서대로 스킬을 습득하여야한다. 그러려면 선행 스킬은 후행 스킬보다 언제나 앞에 있어야함을 유의한다. indexOf를 사용하여 선행 스킬의 index보다 후행 스킬의 index값이 높은 지를 비교하였다. 이 경우 선행스킬이 없을 때, indexOf는 -1을 반환하는 점을 고려하여 조건문을 작성했다. 답안 function solution(skill, skill_trees) { let result = 0; const skill_length = skill.length; const tree_length = sk..
출처 : 프로그래머스 알고리즘 코딩테스트 Level.2 https://programmers.co.kr/learn/courses/30/lessons/42586?language=javascript 풀이 과정 progresses 배열의 가장 앞 요소의 값이 100이 될 때 까지 speeds 만큼 배열의 요소를 증가시킨다. 만약 조건을 충족할 경우 이후 값들에 대해서도 연속적인 검사를 진행한다. 이후 조건이 연속된 만큼 progresses의 요소를 내보낸 뒤 결과 값에 내보낸 숫자를 저장한다. progresses 의 길이가 0이 될 때 까지 반복. 답안 function solution(progresses, speeds) { let result = []; while (progresses.length > 0) { ..
출처 : 프로그래머스 알고리즘 코딩테스트 Level.2 https://programmers.co.kr/learn/courses/30/lessons/42583?language=javascript 풀이 과정 다리 위에 있는 트럭의 무게와 트럭의 위치를 파악이 필요하다. 그러므로 다리의 길이와 같은 길이를 갖는 배열을 선언하여 이를 통해 트럭의 무게, 위치를 관리한다. 또한, 다음 트럭의 무게를 확인하여 다리로 진입이 가능한지 불가능한지 검사해야한다. 답안 function solution(bridge_length, weight, truck_weights) { let count = 0; let arr = Array(bridge_length).fill(0); let sec = 0; let next = truck_..
출처 : 프로그래머스 알고리즘 코딩테스트 Level.2 https://programmers.co.kr/learn/courses/30/lessons/12939?language=javascript 풀이 과정 문자열을 split하여 배열로 만든 뒤, 정렬한다. 자바스크립트 sort의 특징을 주의하자! 답안 function solution(s) { const result = s.split(" ").sort((a, b) => a - b); return result[0] + " " + result[result.length - 1]; }
출처 : 프로그래머스 알고리즘 코딩테스트 Level.2 https://programmers.co.kr/learn/courses/30/lessons/42585?language=javascript 풀이 과정 레이저가 출력될 때 마다 현재 놓여져있는 막대의 개수 만큼 조각이 증가한다. 그러므로 결과 값을 저장할 변수 외에 쌓여져있는 막대의 개수를 저장할 변수도 필요하다. 막대 하나가 끝나는 시점에서도 조각이 증가함을 유의하자. 답안 function solution(s) { let result = 0, count = 0; for (let i = 0; i < s.length; i += 1) { if (s[i] == "(" && s[i + 1] == ")") { result += count; i += 1; } el..