JavaScript

문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/12936 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 방법 이 문제는 순열 문제로 접근했다. 처음에는 직접 순열을 전부 구해 풀이를 진행했지만, 그렇게 하면 20! 만큼 구해야 되서 시간 초과가 발생했다. 그래서 참고한 글에서 주어진 k를 이용해 순서에 올 숫자를 구하는 방식을 이용한 풀이를 참고했다. 참고한 코드 const solution = (n, k) => { let arr = Array.from({length: n}, (..
연산자는 피 연산자를 대상으로 산술, 할당, 논리, 타이브 지수 연산 등을 수행해 하나의 값을 만든다. 피연산자는 값으로 평가될 수 있는 표현식 이어야 한다. 7.1 산술 연산자 산술 연산자는 피연산자를 대상으로 수학적 계산을 수행해 새로운 숫자 값을 만든다. 산술 연산이 불가능하면 NaN을 반환한다. 산술 연산자는 피연산자의 개수에 따라 이항 산술 연산자와 단항 산술 연산자로 구분할 수 있다. 7.1.1 이항 산술 연산자 이항 산술 연산자는 2개의 피연산자를 산술 연산하여 숫자 값을 만든다. 5 + 2; // 7 5 - 2; // 3 5 * 2; // 10 5 / 2; // 2.5 5 % 2; // 1 7.1.2 단항 산술 연산자 단항 산술 연산자는 1개의 피연산자를 산술 연산하여 숫자 값을 만든다. ..
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/148653 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 방법 숫자를 분석해 풀어가는 문제이다. 물론 DFS로 풀 수 있다. 숫자가 5보다 작은 경우 그대로 횟수를 더해주고, 큰 경우는 위에 자리 숫자에 1을 더한 뒤 현제 자리에 10-(현제수)를 위치해준다. 그리고 현재 수가 5인 경우는 위에 수가 5보다 큰지 작은지를 파악해 준뒤 예외를 주어야 한다. 완성된 코드 const solution = (storey) => { let ..
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/67257 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 방법 이 문제를 처음 봤을 때는 DFS를 이용해 풀어볼까 했지만, 반복문을 이용한 구현으로 푸는 것이 좋을 것 같아 구현으로 풀어봤다. 연산자 조합은 총 6개가 되며 expression은 숫자와 연산자들 끼리만 구분해 주고 연산자 우선순위 대로 expression에서 분리된 연산자를 순회하며 해당 인덱스에서 계산되어질 숫자들을 계산후 다시 숫자 배열에 할당해준다. 이렇게 마지..
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/86971 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 방법 이문제는 모든 전력망(노드)를 돌며 경우를 따져야 하므로 DFS와 BFS를 사용해도 된다. 나는 BFS를 사용했다. BFS 함수는 큐에 방문할 노드, visited에 방문한 노드를 저장해 주고 모든 경우를 탐색한다. 내 생각으로는 BFS함수에 각 시작점과 제외점을 주고 시작점과 제외점이 끊어졌다는 것을 가정하고 시작점과 연결된 노드의 갯수를 구한다. 그리고 반복문으로 w..
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/1845 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 방법 해시 문제라 그랬는데 나는 처음에 해시로 풀지 않는다. 해시로 풀게되면 객체를 선언해 key가 폰켓몬 넘버, value는 갯수를 넣어줘 객체를 만들고 계산해주면 된다. 완성된 코드 const solution = (nums) => { const n = nums.length / 2; const map = new Set([...nums]); return map.size > n ..
58청춘
'JavaScript' 태그의 글 목록 (22 Page)