etc
-
프로그래머스 - 프린터 (JavaScript)etc/coding test 2020. 4. 20. 21:59
문제: https://programmers.co.kr/learn/courses/30/lessons/42587 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 해결 과정 중요도가 높은 순서대로 인쇄하는 프린터기를 만든다. 매개변수로 현재 대기목록에 있는 문서의 중요도가 순서대로 담긴 배열 priorities, 내가 인쇄를 요청한 문서의 위치인 location을 받는다. 내가 인쇄를 요청한 문서가 몇 번째로 인쇄되는지 return 규칙은 1. 인쇄 대기목록의 가장 앞에 있는 문서(J)를 대기목록에서 꺼냅니다. 2. 나머지 인쇄 대기목록에서 J보다 중요도가..
-
프로그래머스 - 괄호 변환 (JavaScript)etc/coding test 2020. 4. 19. 01:06
문제: https://programmers.co.kr/learn/courses/30/lessons/60059 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 해결 과정 알고리즘 자체를 문제가 제시해줘서 그대로 코딩했다. 1. 입력이 빈 문자열인 경우, 빈 문자열을 반환합니다. 2. 문자열 w를 두 "균형잡힌 괄호 문자열" u, v로 분리합니다. 단, u는 "균형잡힌 괄호 문자열"로 더 이상 분리할 수 없어야 하며, v는 빈 문자열이 될 수 있습니다. 3. 문자열 u가 "올바른 괄호 문자열" 이라면 문자열 v에 대해 1단계부터 다시 수행합니다. 3-1...
-
프로그래머스 - 크레인 인형뽑기 게임 (JavaScript)etc/coding test 2020. 4. 18. 22:06
문제 : https://programmers.co.kr/learn/courses/30/lessons/64061 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 해결 과정 1. board를 사용하기 편한 모양으로 바꾼다. 0 0 0 0 0 0 0 1 0 3 0 2 5 0 1 4 2 4 4 2 3 5 1 3 1 moves는 row가 아니라 col 기준이므로 board를 뒤집으려고 했다. 0 0 0 4 3 0 0 2 2 5 0 1 5 4 1 0 0 0 4 3 0 3 1 2 1 그랬더니 0이 거슬려서 그냥 0은 제외하고 [4,3] [2,2,5] [1,5,4,..
-
nthFibonacci - 피보나치 수열의 n번째 숫자 찾기etc/coding test 2020. 2. 15. 00:41
JavaScript로 작성피보나치는 앞의 두 숫자의 합으로 이어진 수열이다. 첫번째는 0, 두번째는 1로 정해져 있고, 그 뒤부터 법칙에 따라 수열이 만들어짐0, 1, 1, 2, 3, 5, 8, 13, 21, ... 조건1. 매개변수로 n을 받고, 피보나치 수열의 n번째 숫자를 반환한다.2. 시간복잡도는 O(N)3. 재귀도 써 보고 반복도 써 봐라 (근데 재귀로 풀면 시간 복잡도는 못 맞추는 것 같다?) 피보나치 자주 풀었지만 풀 때마다 걍 새로 푸는 느낌,, 근데 코드 보면 맨날 똑같이 적었.. 소름 재귀 ver 반복 vervar nthFibonacci = function (n) { var array = [0, 1]; for(var i=2; i
-
firstNonRepeatedCharacter - 반복되지 않는 첫문자 찾기etc/coding test 2020. 2. 15. 00:21
예시 firstNonRepeatedCharacter('ABA'); // => 'B' firstNonRepeatedCharacter('AACBDB'); // => 'C' 의사코드 1. 인자가 들어오지 않으면 null 반환 2. 배열 반복문에서 현재 문자의 첫번째 인덱스와 마지막 인덱스가 같으면 바로 반환 / 함수 실행 끝 (조건을 만족하는 문자를 찾으면 반복문을 더 돌지 않음) 3. 반복문을 다 도는 동안 유니크한 문자가 없으면 null을 반환 var firstNonRepeatedCharacter = function(string) { if(string === null) return null; for(var i=0; i
-
rockPaperScissors - 가위, 바위, 보 경우의 수 출력etc/coding test 2020. 2. 14. 23:21
조건 1. 3명이 가위, 바위, 보를 했을 때 나오는 모든 경우의 수 출력 2. 2차 배열로 리턴 extra credit 매개변수를 받아서 3명이 아니라 매개변수만큼 참여자가 있는 경우의 수 출력하기 문제 처음 풀었을 때 엑스트라 크레딧은 버리고, 3명인 경우만 먼저 맞추자! 해서 for문을 3번 돌렸다^__^,, var rockPaperScissors = function (num) { const rps = ["rock", "paper", "scissors"]; var resultArray = []; var sequence = []; for(var i=0; i