문제https://school.programmers.co.kr/learn/courses/30/lessons/150369?language=javascript 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이이번 문제는 단순한 수학을 통해 풀 수 있는 문제다. 문제를 파악해 보면, 결국 맨 끝 집은 찍어야 하므로 필자는 맨 끝집부터 탐색을 시작했다. 끝에서 부터 배달 및 수거한 갯수를 측정해 이 값들이 모두 양수일 때 까지 cap 만큼 더해주는 과저을 반복한다. 코드function solution(cap, n, deliveries, pickups) { le..
분류 전체보기
타입스트립트 컴파일러는 두 가지 역할을 수행한다.최신 TS/JS 코드를 브라우저에서 동작할 수 있도록 구버전의 JS로 트랜스파일 한다.코드의 타입 오류를 체크한다.이 두 가지는 서로 완벽히 독립적으로 동작한다. 즉, TS가 JS로 변환될 때 코드 내의 타입에는 영향을 주지 않으며 JS의 실행 시점(런타임)에도 타입은 영향을 미치지 않는다. 타입 오류가 있는 코드도 컴파일이 가능하다컴파일은 타입 체크와 독립적으로 동작하기에 타입 오류가 있는 코드도 컴파일이 가능하다.let x = 'hello';x = 1234;// '1234' 형식은 'string' 형식에 할당할 수 없다 타입 체크와 컴파일이 동시에 이뤄지는 C나 자바 같은 언어와는 달리 Typescript는 문제가 될 만한 부분을 알려주지만, 빌드는 멈..
문제https://school.programmers.co.kr/learn/courses/30/lessons/250136 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이그냥 일반적인 BFS 문제로 처음 파악을 했다. 근데 풀어보니 틀리기도 했고 효율성 검사도 통과하지 않았다.const bfs = (arr, x) => { const start = Array.from({length: arr.length}, (_, i) => [i, x]); for(let i = 0; i = 0 && ny >= 0 && nx 1) continue; ..
이번 글은 저번에 발생했던 에러와 추가적으로 발생한 에러를 포함한 에러들을 수정한 내용을 정리하는 글이다. 페이지 이동에 따른 게임 실행 에러 해결Kaplay 라이브러리를 이용해 게임 기능을 구현했습니다. 웹 게임 만들기를 도와주는 Kaplay 라이브러리 사용Kaplay 라이브러리는 Web의 Canvas API를 기반으로 게임에 필요한 다양한 기능들을 지원해주58cjdcns99.tistory.com 추가적으로 발견한 에러게임 페이지에서 다른 페이지로 이동한 상태에서 네비게이션 바의 링크 버튼으로 이동할 때 발생하는 에러는 이전에 보완작업을 진행해 에러가 사라졌었다. 하지만 새롭게 발견한 에러는 뒤로가기를 통해 이동했을때 게임 코드가 원활하게 동작하지 않는 에러였다. 기본적으로 저번 에러의 경우와 동일한 ..
문제https://school.programmers.co.kr/learn/courses/30/lessons/72412 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이문제를 풀이할 때 Map 객체를 이용해 사람들의 입력 데이터를 key로, 점수를 value로 Map객체에 저장했다. 물론 같은 조건에 다른 점수를 갖는 사람들이 있을 수 있으니 배열에 추가하는 형식으로 진행했다. 이후 검색 조건에 맞는 사람들의 수를 구할 때 일반적인 탐색을 진행하게 되면 시간초과가 발생할 수 있으니 이진탐색 알고리즘을 이용해 해당 조건의 점수들 중 결과로 만족하는 값을 탐색..
노드 탐색요소 노드를 취득한 다음, 취득한 요소 노드를 기점으로 DOM 트리의 노드를 옮겨 다니며 부모, 형제, 자식 노드 등을 탐색 해야 할 때가 있다. Apple Banana Orange ul#fruits 요소는 3개의 자식 요소를 갖기에 ul#fruits 요소 노드를 취득하고 자식 노드를 모두 탐색하거나 자식 노드 중 하나만 탐색할 수 있다. 이처럼 DOM 트리 상의 노드를 탐색할 수 있도록 Node, Element 인터페이스는 트리 탐색 프로퍼티를 제공한다.parentNode, PreviousSibiling, firstChild, childNodes 프로퍼티는 Node.protoype이 제공하고, 프로퍼티키에 Element가 포함된 previousElementSibling, nextEleme..