Algorithm/KAKAO

Algorithm/KAKAO

2021카카오인턴십:[문자열처리] 숫자 문자열과 영단어[lv1] : Javascript

문제 https://school.programmers.co.kr/learn/courses/30/lessons/81301?language=javascript 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 접근방법 1. alphabet과 숫자를 1:1 매칭시킨 검색 테이블을 만들어준다. 2. 이 테이블에서 keys() 배열을 뽑아 forEach로 순회작업을 진행해주며 3. values()로 뽑은 숫자목록을 forEach문의 idx로 접근하여 문자열 replace를 진행해준다. 문자열 변수를 이용해야 하므로 const re = /ab+c/i; // litera..

Algorithm/KAKAO

2022카카오인턴십: [Dijkstra] 등산코스 정하기[lv3]

문제 https://school.programmers.co.kr/learn/courses/30/lessons/118669 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 접근방법 우선순위 큐를 활용한 다익스트라 알고리즘으로 풀이 + Greedy [그리디 알고리즘을 위한 아이디어 도출해내기] : 가장 그럴듯 한 해를 구하는 것으로 최적해를 구할 수 있는 경우 출발점에서 산봉우리를 올라갔다가 다시 돌아오는 것까지 고려하는 것은 복잡함, -> 특정 산봉우리까지 편도 코스의 intensity(간선 최대값)를 우선순위 큐에 추가하는 것만으로도 정답도출 가능 -> w..

Algorithm/KAKAO

2022 카카오인턴십:[Two pointer] 두 큐의 합 같게만들기

문제 https://school.programmers.co.kr/learn/courses/30/lessons/118667 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 제약조건 q1,q2 길이 ≤ 30만 O(n^2)의 알고리즘은 시간 초과임을 의미 O(10^8) 이하의 알고리즘 채택 필요 → O(nlogn),O(n) q1,q2 의 원소 ≤ 10^9 int자료형은 일반적으로 2^31 = 2*10^9 까지 표현 가능 (int: 4byte) q1,q2의 요소가 int임을 의미 문제유형 투포인터 + 그리디 큐는 눈속임 →큐를 합쳐서 투 포인터 로 접근 두 ..

Algorithm/KAKAO

2022 카카오인턴십:[Implementation] 성격 유형 검사

문제 https://school.programmers.co.kr/learn/courses/30/lessons/118666?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 [구현] 유형 로직을 모듈화 시킨 풀이로 작성 성격 유형별 점수를 기입한 table을 defaultdict로 선언 scoreReducer 함수 : (동의&비동의) 점수 변환 로직 1→3 , 2→2 ,3→1 , 4→0 , 5→1 ,6→2 , 7→3 tableChecker 함수: survey문자열, choice선택지번호 , score변환점수, table을 ..

JakeTheMaverick