Algorithm
-
2018 KAKAO BLIND RECRUITMENT[1차] 뉴스 클러스터링Algorithm/프로그래머스 2022. 7. 25. 19:49
https://school.programmers.co.kr/learn/courses/30/lessons/17677?language=javascript 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(str1, str2) { let answer = 0; const intersection = []; const union = {}; function devide(str) { let arr = []; const regex = /[a-zA-Z]/; for (let i = 0; i < str.length - 1; i++) { if (re..
-
2020 KAKAO BLIND RECRUITMENT) 괄호 변환Algorithm/프로그래머스 2022. 7. 23. 22:42
https://school.programmers.co.kr/learn/courses/30/lessons/60058 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명에 알고리즘이 어떻게 돌아가는지 친절하게 설명이 되어있어서 구현을 하는데는 큰 어려움이 없었지만 처음 이해하기까지 시간을 많이 소모했던 문제였습니다. function isBalance(arr) { let sum = 0; for (let x of arr) { if (x === "(") sum--; else sum++; } if (sum === 0) return true; else retur..
-
2021 KAKAO BLIND RECRUITMENT) 메뉴 리뉴얼Algorithm/프로그래머스 2022. 7. 19. 15:32
https://school.programmers.co.kr/learn/courses/30/lessons/72411 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 위의 문제는 크게 3단계로 나뉘어 생각해볼 수 있습니다. 1) course에 해당하는 조합의 모든 경우의 수 구하기 -> 이중 for문 순회하며 DFS 탐색 활용 2) course 별로 가장 많은 경우가 나온 메뉴 조합 추출하기 -> map object(data) 이용하여 카운트 3) data에 담긴 key 값 중에 가장 높은 숫자를 answer 배열에 push -> 큰 값이 여러 개일 경우 모든..
-
2020 KAKAO BLIND RECRUITMENT) 문자열 압축Algorithm/프로그래머스 2022. 7. 15. 15:06
https://school.programmers.co.kr/learn/courses/30/lessons/60057?language=javascript 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 주어진 문자열을 일정 크기만큼 잘라 연속된 문자는 압축한 후 문자열의 크기를 구하는 문제입니다. 제가 작성한 코드는 아래와 같습니다. function solution(s) { let answer = Number.MAX_SAFE_INTEGER; if (s.length === 1) return 1; for (let i = 1; i
-
2019 KAKAO BLIND RECRUITMENT) 실패율Algorithm/프로그래머스 2022. 7. 10. 18:33
https://school.programmers.co.kr/learn/courses/30/lessons/42889?language=javascript 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(N, stages) { let answer = []; let check = []; // 실패율을 담을 배열 for (let i = 0; i v === i + 1).length / (stages.filter((v) => v >= i + 1).length ..
-
2020 카카오 인턴십) 키패드 누르기Algorithm/프로그래머스 2022. 7. 8. 17:38
https://school.programmers.co.kr/learn/courses/30/lessons/67256?language=javascript 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(numbers, hand) { let answer = ""; let lp = "*"; let rp = "#"; const keyPad = [ [3, 1], [0, 0], [0, 1], [0, 2], [1, 0], [1, 1], [1, 2], [2, 0], [2, 1], [2, 2], ]; function dis(a, b) { if..
-
2021 카카오 채용연계형 인턴십) 숫자 문자열과 영단어Algorithm/프로그래머스 2022. 7. 8. 14:38
https://school.programmers.co.kr/learn/courses/30/lessons/81301?language=javascript 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이1) function solution(s) { var answer = 0; answer = s .replace(/zero/g, 0) .replace(/one/g, 1) .replace(/two/g, 2) .replace(/three/g, 3) .replace(/four/g, 4) .replace(/five/g, 5) .replace(/six/g, 6) .re..
-
2021 KAKAO BLIND RECRUITMENT) 신규 아이디 추천Algorithm/프로그래머스 2022. 7. 7. 20:14
https://school.programmers.co.kr/learn/courses/30/lessons/72410?language=javascript 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(new_id) { let answer = new_id; console.log(answer); answer = answer .toLowerCase() // 1단계: 소문자 치환 .replace(/[^\w\-\.]/gi, "") //2단계: 소문자,숫자,-,_,. 제외 모든 문자 제거 .replace(/[|.]+/gi, "."); /..