문제 설명 출발지점부터 distance만큼 떨어진 곳에 도착지점이 있습니다. 그리고 그사이에는 바위들이 놓여있습니다. 바위 중 몇 개를 제거하려고 합니다. 예를 들어, 도착지점이 25만큼 떨어져 있고, 바위가 [2, 14, 11, 21, 17] 지점에 놓여있을 때 바위
자바스크립트는 명령형, 함수형, 프로토타입 기반, 객체지향 프로그래밍을 지원하는 멀티 패러다임 프로그래밍 언어다. 자바스크립트를 이루고 있는것중 원시값을 빼면 다 객체로 이뤄져 있다. 객체지향 프로그래밍 객체의 집합으로 프로그램을 표현하는 프로그래밍 패러다임을 말한다
문제 설명 평소 식욕이 왕성한 무지는 자신의 재능을 뽐내고 싶어 졌고 고민 끝에 카카오 TV 라이브로 방송을 하기로 마음먹었다. 그냥 먹방을 하면 다른 방송과 차별성이 없기 때문에 무지는 아래와 같이 독특한 방식을 생각해냈다. 회전판에 먹어야 할 N 개의 음식이
문제 설명 포털 다음에서 검색어 자동완성 기능을 넣고 싶은 라이언은 한 번 입력된 문자열을 학습해서 다음 입력 때 활용하고 싶어 졌다. 예를 들어, go 가 한 번 입력되었다면, 다음 사용자는 g 만 입력해도 go를 추천해주므로 o를 입력할 필요가 없어진다! 단, 학
문제 설명 일렬로 나열된 n개의 풍선이 있습니다. 모든 풍선에는 서로 다른 숫자가 써져 있습니다. 당신은 다음 과정을 반복하면서 풍선들을 단 1개만 남을 때까지 계속 터트리려고 합니다. 임의의 인접한 두 풍선을 고른 뒤, 두 풍선 중 하나를 터트립니다. 터진 풍선으로
문제 설명 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 많이 재생된 장르를 먼저 수록합니다. 장르 내에서 많이 재생된 노래를
일급 객체 무명의 리터럴로 생성 할 수 있다. 런타임에 생성이 가능하다 변수나 자료구조에 저장할 수 있다 함수의 매개변수에 전달할 수 있다 함수의 반환값으로 사용할 수 있다 함수가 일급 객체라는것은 함수를 객체와 동일하게 사용 가능하다는 뜻이다. 객체는 값이고 함수도
Object 생성자 함수 new 연산자와 함께 Object 생성자 함수를 호출하면 빈 객체를 생성하여 반환한다. String, Number,Boolean,Function,Array,Date,RegExp,promise 등의 빌트인 생성자 함수도 제공한다. 객체를 생성
자바스크립트 엔진은 프로퍼티를 생성할 때 프로퍼티의 상태를 나타내는 프로퍼티 어트리뷰트를 기본값으로 자동 정의한다. 프로퍼티 어트리뷰트는 자바스크립트 엔진이 관리하는 내부 상태 값인 내부 슬롯 [[Value]],[[Writable]],[[Enumerable]],[[Co
문제 설명 xx 회사의 2xN명의 사원들은 N명씩 두 팀으로 나눠 숫자 게임을 하려고 합니다. 두 개의 팀을 각각 A팀과 B팀이라고 하겠습니다. 숫자 게임의 규칙은 다음과 같습니다. 먼저 모든 사원이 무작위로 자연수를 하나씩 부여받습니다. 각 사원은 딱 한 번씩 경기
문제 설명 n개의 노드가 있는 그래프가 있습니다. 각 노드는 1부터 n까지 번호가 적혀있습니다. 1번 노드에서 가장 멀리 떨어진 노드의 갯수를 구하려고 합니다. 가장 멀리 떨어진 노드란 최단경로로 이동했을 때 간선의 개수가 가장 많은 노드들을 의미합니다. 노드의 개수
문제 설명 고속도로를 이동하는 모든 차량이 고속도로를 이용하면서 단속용 카메라를 한 번은 만나도록 카메라를 설치하려고 합니다. 고속도로를 이동하는 차량의 경로 routes가 매개변수로 주어질 때, 모든 차량이 한 번은 단속용 카메라를 만나도록 하려면 최소 몇 대의 카
앞서 다룬 내용은 var키워드로 전역변수로 선언하면 중복 선언 및 예상치 못한 문제를 야기해서 사용하지 않는게 좋다고 했다. let, const 키워드를 알아본다. let 변수 중복 선언 금지 var 키워드는 변수 중복 선언이 가능했으나 let 키워드는 중복 선언시
문제 설명 두 개의 단어 begin, target과 단어의 집합 words가 있습니다. 아래와 같은 규칙을 이용하여 begin에서 target으로 변환하는 가장 짧은 변환 과정을 찾으려고 합니다. 예를 들어 begin이 "hit", target가 "cog", word
문제 설명 회사원 Demi는 가끔은 야근을 하는데요, 야근을 하면 야근 피로도가 쌓입니다. 야근 피로도는 야근을 시작한 시점에서 남은 일의 작업량을 제곱하여 더한 값입니다. Demi는 N시간 동안 야근 피로도를 최소화하도록 일할 겁니다.Demi가 1시간 동안 작업량 1
문제 설명 자연수 n 개로 이루어진 중복 집합(multi set, 편의상 이후에는 "집합"으로 통칭) 중에 다음 두 조건을 만족하는 집합을 최고의 집합이라고 합니다. 각 원소의 합이 S가 되는 수의 집합 위 조건을 만족하면서 각 원소의 곱 이 최대가 되는 집합 예를
문제 설명 이중 우선순위 큐는 다음 연산을 할 수 있는 자료구조를 말합니다. 명령어 수신 탑(높이) I 숫자 큐에 주어진 숫자를 삽입합니다. D 1 큐에서 최댓값을 삭제합니다. D -1 큐에서 최솟값을 삭제합니다. 이중 우선순위 큐가 할 연산 operations가 매
전역 변수는 많이 사용하면 참조하는 모든 값에 영향을 끼쳐 코드의 흐름을 읽기 힘들어지고 생명주기가 길어 메모리 리소스도 오랜 기간 소비하게 된다. 이해하기 편하려면 바탕화면에 안녕하세요.txt 파일이 있고 폴더를 만들어 내부에 안녕하세요.txt 파일을 만들었는데 바탕
스코프는 유효범위를 뜻한다. 앞서 다룬 함수에서도 함수 몸체 내부에서만 참조 할 수 있다는게 스코프다. 그럼 함수내에서 선언한 함수는 어디까지 참조 할 수 있을까? 즉 스코프는 식별자가 유효한 범위를 말한다. 그럼 함수 외부와 내부에 같은 이름의 식별자가 있는경우는
함수 함수의 기본은 입력을 받아 출력을 내보내는 과정을 정의한 것이다. 그림에 있는 함수를 코드로 작성 그럼 굳이 이렇게 함수의 형태를 안만들고도 연산을 할 수 있지 않나 싶지만 함수를 사용 시 코드의 재사용성, 1+2, 3+4, 1+6등 같은 코드를 중복 사용 시