본문 바로가기

Algorithm/카카오

(9)
[2018 KAKAO BLIND RECRUITMENT] [3차] 압축 https://school.programmers.co.kr/learn/courses/30/lessons/17684 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 해결방법 생각보다 헤맸던 문제이다. 2시간 정도 걸렸다;; 처음 접근하는 방법이 중요하다. 다른 방법으로 시도한 끝에 결국 딕셔너리를 이용하는게 맞다고 판단이 되어서 딕셔너리를 사용하였다. 1. msg 문자열의 각 알파벳의 아스키코드 값을 dict라는 딕셔너리에 저장한다. 2. left와 right을 두어서 각 문자열이 dict에 있는지 없는지 판단해야한다. (w, c) 3. w와 c를 구해..
[2022 KAKAO BLIND RECRUITMENT] 주차 요금 계산 https://school.programmers.co.kr/learn/courses/30/lessons/92341 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 해결방법 단순? 아니 그냥 시뮬레이션 문제이다. 본인은 stack과 딕셔너리를 활용해서 해결했다. 디버깅때매 1시간 10분 소요;; 1. 일단 차량 번호에 해당하는 입차, 출차를 딕셔너리에 추가 2. 차량들을 For문 돌려서 각 차량이 주차장에 있었던 시간(분)을 total_time에 저장 3. 주차장에 있었던 시간이 기본 시간보다 적은 경우는 기본 요금, 아니면 기본요금 + 특정 분당 추가..
[2022 KAKAO BLIND RECRUITMENT] k진수에서 소수 개수 구하기 https://school.programmers.co.kr/learn/courses/30/lessons/92335 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 해결 방법 중요한 포인트는 n을 k진수로 변환하는 코드와 소수인지 아닌지 판별하는 코드이다. 1. 주어진 n을 k진수로 변환한다. 2. 변환했으면, 0 주위에 있는 숫자가 소수인지 판별해야한다. 3. 조건을 보면 그냥 0을 제외한 모든 숫자를 검사하면 된다. 4. 각 숫자가 소수인지 판별한다. 5. 소수인지 판별 할때, int(n ** 0.5)로 범위를 줄이지 않으면 1번 테스트 케이스에서 ..
[2018 KAKAO BLIND RECRUITMENT] [1차] 뉴스 클러스터링 https://school.programmers.co.kr/learn/courses/30/lessons/17677 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 해결 방법 꽤 헤맸지만 그렇게 어렵다고 느낄만한 문제는 아니었다. 확실히 알고리즘 한달차였을 땐 레벨 2라도 카카오 문제에서 엄청 막히고 답이 안보였는데, 두달 가까이 꾸준하게 하다보니 두렵지 않고 좋은 문제네 라는 느낌이 는다. 디버깅 포함 1시간 10분 정도 걸렸다. 1. 주어진 문자열을 for문 돌린다. 2. for문을 돌면서 알파벳 문자열을 제외한 두 쌍을 새로운 배열로 만든다. 해당..
[2019 카카오 개발자 겨울 인턴십] 튜플 https://school.programmers.co.kr/learn/courses/30/lessons/64065 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 해결방법 문제는 간단했다. ssplit을 어떻게 활용할지만 생각하면 된다. s 문자열은 항상 '{{'로 시작하고 '}}'로 끝난다. 그렇기 때문에 리스트 슬라이스를 이용해서 시작과 끝 부분을 지우고, '},{을 split 하여서 구간을 나누어 준다. sort를 배열 길이로 정렬해주고 answer에 해당 값이 들어가있는지 확인하면서 append한다. 2. 정답코드 def solution(s):..
[2020 KAKAO BLIND RECRUITMENT] 기둥과 보 설치 https://school.programmers.co.kr/learn/courses/30/lessons/60061 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 틀린 풀이 # 틀린 풀이 def solution(n, build_frame): answer = [] def check(answer): for number in answer: x, y, a = number # 기둥이 설치될 조건 if a == 0: if y == 0 or [x - 1, y, 1] in answer or [x + 1, y, 1] in answer or [x, y - 1, 0] i..
[2020 KAKAO BLIND RECRUITMENT] 자물쇠와 열쇠 https://school.programmers.co.kr/learn/courses/30/lessons/60059# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 고고학자인 "튜브"는 고대 유적지에서 보물과 유적이 가득할 것으로 추정되는 비밀의 문을 발견하였습니다. 그런데 문을 열려고 살펴보니 특이한 형태의 자물쇠로 잠겨 있었고 문 앞에는 특이한 형태의 열쇠와 함께 자물쇠를 푸는 방법에 대해 다음과 같이 설명해 주는 종이가 발견되었습니다. 잠겨있는 자물쇠는 격자 한 칸의 크기가 1 x 1인 N x N 크기의 정사각 격자 형태이고 특이한 모양의 ..
[2020 KAKAO BLIND RECRUITMENT] 문자열 압축 https://school.programmers.co.kr/learn/courses/30/lessons/60057?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문자열에서 같은 값이 연속해서 나타나는 것을 그 문자의 개수와 반복되는 값으로 표현하여 더 짧은 문자열로 줄여서 표현하는 알고리즘을 공부하고 있습니다. 간단한 예로 "aab..