자바스크립트

· 알고리즘
🔥문제링크https://school.programmers.co.kr/learn/courses/30/lessons/340212 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 🔥풀이제한사항을 보면서 바로 이진탐색으로 접근하라는 냄새를 맡을 수 있었다. 이진탐색으로 접근 안한다면 괴랄할만큼의 연산 횟수가 필요하고 그럼 분명히 시간초과 이슈가 생기기 때문이다. 다행히 해당 접근이 맞았고 해결!function solution(diffs, times, limit) { let max = 100000, min = 1, mid = undefined le..
· 알고리즘
코딩테스트 연습 > 연습문제 > 리코쳇 로봇 (JS) 문제풀이 🔥문제https://school.programmers.co.kr/learn/courses/30/lessons/169199 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 🔥풀이처음에 DFS로 문제풀이 접근을 했는데 여러케이스에서 시간초과로 문제풀이에 실패했다. 그래서 다른 사람의 풀이를 봤는데 BFS로 문제에 접근하고 있었고 내 생각에도 이 접근법이 시간이 월등히 적게 들꺼란 생각이 들어 BFS로 다시 문제풀이를 진행했다.  우리는 목표위치에 도달하기 위한 최소한의 미끄러짐 수를 구하기 때문에 ..
· 알고리즘
🔥문제링크https://school.programmers.co.kr/learn/courses/30/lessons/60058 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 🔥풀이이 문제는 재귀함수를 이용하여 주어진 변환을 지속적으로 할 수 있는지를 확인하는 문제이다. 재귀 함수를 진행하기 위해 필요한 함수 두개를( 균형잡힌 괄호 문자열인지 판단 하는 함수 => is_balanced_string, 올바른 괄호 문자열인지 판단하는 함수 =>is_right_string ) 정의하고 이를 재귀함수 내부에서 이용하여 분기처리 했다.function solution(p..
· 알고리즘
🔥문제https://school.programmers.co.kr/learn/courses/30/lessons/150368 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 🔥풀이일단 주어진 조건을 보면 emoticon의 갯수는 최대 7개 정도이고 할인율은 4가지 종류이다. 따라서 이모티콘이 가질 수 할인율 가지수는 최대 4**7 정도이므로 각각의 경우를 모두 개산하는 방식으로 접근해도 무리없다고 판단하였다. 일단 calculator 함수는 유저정보(user_arr)와 이모티콘들의 가격과 할인율을 담은 2차원 배열(emoticons_arr)을 매개변수로 주어졌..
· 알고리즘
🔥문제링크https://school.programmers.co.kr/learn/courses/30/lessons/43163 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 🔥풀이일단 스펠링이 하나만 다른 경우만 단어 변환이 가능하므로 이동가능한 word인지를 확인 하는 함수 can_convert를 정의하여 이를 이용했다. 그리고 재귀함수의 방법을 통해 tagert으로 이동 가능한 모든 경우의수를 깊이우선탐색 방식으로 탐색하면서 목표로한 target 문자열로 변경이 됐을 경우를 포착하고 몇번이동했는지를 현재 최솟값과 비교하여 더 작게 이동했다면 최솟값을 up..
· 알고리즘
🔥문제링크https://school.programmers.co.kr/learn/courses/30/lessons/43105 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  🔥풀이프로그래머스 홈페이지 코딩테스트 문제목록 위에 보면 AI 가 나를 분석해 추천해주는 문제가 있어서 그 문제를 풀어보았다. 알고리즘의 카테고리는 동적계획법으로 분류 되어 있었는데 정확히 동적계획법이 뭔지 궁금해서 찾아보니 ... 이렇다고 한다. 계산화 최적화라고 생각하면 될 것같고 dynamic programming (DP) 이라고 한다자 이제 진짜 풀이이다. function sol..
· 끄적끄적
시험후기7/21 PCCP 시험을 치뤘다. 첫 시험이라 가벼운 마음으로 임하긴 했는데 결과는 아쉬워서 아마 재응시 할 것 같다.나는 프론트엔드 개발자로 일하고 있고 평소에 JavaScript가 익숙하므로 JS로 시험을 응시했다.  시험시간은 120분 총 문제는 4문제였고 나는 4문제 중 1,2,3 번을 풀었다. 3번까지 거의 80분만에 풀었고 남은 문제에 40분을 태웠지만 결국 풀지 못했다. 그래도 4문제중 1,2,3 번을 풀었으니 lv0~lv5 까지 중에 lv3은 맞겠거니 싶었는데 왠걸 내 시험결과는 lv1 이었다. 왜 그렇게 시험점수가 나왔는지 자세하게 알려주지는 않았고 내 추측상 최적화 테스트에서 뭔가 문제가 있었을 것 같다. 마지막 4번문제에 쓸 시간을 1,2,3번 풀이를 효율성 측면을 고려하여 수..
· 알고리즘
🔥문제링크https://school.programmers.co.kr/learn/courses/30/lessons/120876 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   🔥풀이문제의 핵심은 겹치는 길이를 count 하는 것이다. 나는 선분의 시작점과 끝점이 정수로 주어진다는 사실을 인지하여 정수사이의 수를 이용했다. 예를들어 [1,3]과 [2,4] 라는 선분이 주어진다면 우리는 각각의 선분 영역에 1.5, 2.5, 3.5 중 몇개가 포함되어 있는지 확인하면 된다.  위와같은 원리를 이용해 모든 선분의 가장작은 시작점과 가장 큰 끝점을 파악하고 그 사..
· 알고리즘
🔥문제링크https://school.programmers.co.kr/learn/courses/30/lessons/68936 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 🔥풀이 핵심어떤영역이 4분할 될 시 그 각각의 4분할 된 영역을 새로운 영역으로 잡아서 다시 같은 동작을 반복하는 프로세스를 코드로 작성하는게 핵심인데 재귀함수를 이용해서 풀었다.     🔥풀이일단 0,1 을 count 할 수 있는 객체를 생성한다.dfs라는 함수를 정의하고 이를 재귀적으로 이용하여 0, 1 을 카운트하였다. dfs를 살펴보자.. 압축해야할 어떤영역의 가장 좌측상단의 r..
· 알고리즘
🔥문제링크https://school.programmers.co.kr/learn/courses/30/lessons/43162 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 🔥풀이 핵심제목 옆에도 표시 되었듯이 풀이의 핵심은 DFS 로 연결된 모든 컴퓨터들을 다 타고 들어가 하나의 네트워크 그룹으로 묶는 동시 들렀던 컴퓨터는 체크하여 해당 컴퓨터는 다시 들리지 않는 것 이다.   🔥첫번째 내 풀이내가 처음에 생각한 내풀이는 재귀함수를 사용하진 않았다. 하지만 재귀함수의 동작을 큐(queue)와 while을 통해 구현하였다. 아래와 같은 코드로 문제를 풀고 ..
devWarrior
'자바스크립트' 태그의 글 목록