일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 그리디
- Set
- 다익스트라
- lambda
- BFS
- 추석맞이 코딩챌린지
- 수학
- heapq
- backjoon
- 동적 계획법
- DateTime
- 이분탐색
- 파이썬
- 프로그래머스
- python
- 재귀함수
- KAKAO BLIND RECRUITMENT
- dfs
- 자바
- programmers
- 위클리 챌린지
- Re
- divmod
- 백준
- Combinations
- Zip
- 정규식
- java
- 정렬
- 카카오
- Today
- Total
목록카카오 (40)
상상쓰
https://programmers.co.kr/learn/courses/30/lessons/92344 코딩테스트 연습 - 파괴되지 않은 건물 [[5,5,5,5,5],[5,5,5,5,5],[5,5,5,5,5],[5,5,5,5,5]] [[1,0,0,3,4,4],[1,2,0,2,3,2],[2,1,0,3,1,2],[1,0,1,3,3,1]] 10 [[1,2,3],[4,5,6],[7,8,9]] [[1,1,1,2,2,4],[1,0,0,1,1,2],[2,2,0,2,0,100]] 6 programmers.co.kr 문제를 풀었을 때, 누적 합을 생각했으나 시간초과가 났다. 당시에 풀었던 방법은 예를 들어, skill이 [1, 0, 0, 3, 4, 4] 라고 한다면, -4 0 0 0 0 4 -4 0 0 0 0 4 -4 0..
https://programmers.co.kr/learn/courses/30/lessons/92342 코딩테스트 연습 - 양궁대회 문제 설명 카카오배 양궁대회가 열렸습니다. 라이언은 저번 카카오배 양궁대회 우승자이고 이번 대회에도 결승전까지 올라왔습니다. 결승전 상대는 어피치입니다. 카카오배 양궁대회 운영위원 programmers.co.kr 이 문제를 작년에 2022 KAKAO BLIND RECRUITMEMT 에서 풀었을 때는 DFS로 접근하였다. 이번에는 product 를 이용하여 경우의 수 2,048개를 구해놓고 조건에 맞으면 해당 점수의 차이와 라이언의 기록을 기억하여 점수가 크거나, 점수가 같을 때는 낮은 점수의 과녁을 많이 맞힌 기록을 새로이 기억하여 마지막으로 기억하는 라이언의 기록을 반환한다..
https://programmers.co.kr/learn/courses/30/lessons/92341 코딩테스트 연습 - 주차 요금 계산 [180, 5000, 10, 600] ["05:34 5961 IN", "06:00 0000 IN", "06:34 0000 OUT", "07:59 5961 OUT", "07:59 0148 IN", "18:59 0000 IN", "19:09 0148 OUT", "22:59 5961 IN", "23:00 5961 OUT"] [14600, 34400, 5000] programmers.co.kr 오랜만에 풀어서 그런지 문법들이 기억이 잘 안 난다. dictionary 를 이용하여 입차 시간과 출차 될 때 주차시간을 기록한다. import math def solution(fees..
https://programmers.co.kr/learn/courses/30/lessons/92335 코딩테스트 연습 - k진수에서 소수 개수 구하기 문제 설명 양의 정수 n이 주어집니다. 이 숫자를 k진수로 바꿨을 때, 변환된 수 안에 아래 조건에 맞는 소수(Prime number)가 몇 개인지 알아보려 합니다. 0P0처럼 소수 양쪽에 0이 있는 경우 P0처럼 소 programmers.co.kr 1. k진수를 구한다. 2. P는 각 자릿수에 '0' 을 포함하지 않고 양옆에 '0' 또는 아무것도 없어야 하므로 '0' 을 기준으로 쪼개어 배열을 만든다. 3. 배열 중 소수인 원소의 개수를 구한다. import math def prime(n): answer = True for i in range(2, int..
https://programmers.co.kr/learn/courses/30/lessons/92334 코딩테스트 연습 - 신고 결과 받기 문제 설명 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의 programmers.co.kr 작년에 풀었었는데 반가웠다. set 을 사용하여 정지당한 유저를 구하고 그 유저를 신고한 인원을 차례로 확인하여 count[신고자] += 1 을 한다. from collections import defaultdict def solution(id_list, report, k): answer = [] dic = defaultdict(set) count = d..
https://www.acmicpc.net/problem/15954 15954번: 인형들 첫 번째부터 세 번째까지의 인형을 선택하면 표준편차는 2/3의 양의 제곱근이 되고, 이 때 표준편차가 최소가 된다. 두 번째부터 네 번째까지의 인형을 선택하는 경우와, 세 번째부터 다섯 번째 www.acmicpc.net K 이상의 연속된 인형의 값의 표준편차 중 가장 작은 값을 반환하면 되는 문제다. 반목문을 통하여 구한 K 이상의 길이의 배열들의 표준편차를 구할 때 필요한 평균 또는 분산의 값들은 누적 합을 통하여 새로이 정의된 배열을 통해서 구한다. (시간 초과 방지) sumDolls[][0] 은 누적 합이며, sumDolls[][1] 은 누적 제곱합이다. m(평균) = (sumDolls[end][0] - sum..
https://programmers.co.kr/learn/courses/30/lessons/72415 코딩테스트 연습 - 카드 짝 맞추기 [[1,0,0,3],[2,0,0,0],[0,0,0,2],[3,0,1,0]] 1 0 14 [[3,0,0,2],[0,0,1,0],[0,1,0,0],[2,0,0,3]] 0 1 16 programmers.co.kr 너무 힘든 문제였다. 예를 들어 캐릭터가 1, 2, 3이 있다고 하자. 그럼 card = {1 : [1의 좌표], 2 : [2의 좌표], 3 : [3의 좌표]} 1의 좌표가 (0, 0), (3, 2) 라고 한다면, (0, 0) -> (3, 2) 또는 (3, 2) -> (0, 0) 을 생각해줘야 한다. card[i] = list(permutations(card[1])..
https://programmers.co.kr/learn/courses/30/lessons/17687 코딩테스트 연습 - [3차] n진수 게임 N진수 게임 튜브가 활동하는 코딩 동아리에서는 전통적으로 해오는 게임이 있다. 이 게임은 여러 사람이 둥글게 앉아서 숫자를 하나씩 차례대로 말하는 게임인데, 규칙은 다음과 같다. 숫자를 0 programmers.co.kr 나누기를 반복하여 구한 N진수를 result 에 더하여 최대 t * m 길이의 문자열을 만든다. p = t * m: break i += 1 answer = ''.join([result[i*m+p-1] for i in range(t)]) return answer print(solution(2, 4, 2, 1)) # 0111
https://programmers.co.kr/learn/courses/30/lessons/17686 코딩테스트 연습 - [3차] 파일명 정렬 파일명 정렬 세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다. 저장소 서버에는 프로그램 programmers.co.kr 정규식을 이용하여 file 의 숫자를 기준으로 split 한다. (\d+), 소괄호를 통해 숫자 형태의 문자열을 배열에 담아 [파일명(영문자), 파일명(숫자), .확장자] 로 전체 file 을 받아 file[0].lower() 과 int(file[1]) 로 오름차순으로 정렬한다. import re def solution(files): answer = ..
https://programmers.co.kr/learn/courses/30/lessons/17684 코딩테스트 연습 - [3차] 압축 TOBEORNOTTOBEORTOBEORNOT [20, 15, 2, 5, 15, 18, 14, 15, 20, 27, 29, 31, 36, 30, 32, 34] programmers.co.kr 우선, dic = {'A' : 1, 'B' : 2, ..., 'Z' : 26 } 를 만든다. s = 0, e = 1 로 설정하고 msg = 'KAKAO' 를 예로 들면, msg[s:e] 인 'K' 가 dic 에 있으면, e += 1 해서 'KA' 가 dic 에 존재하는지 비교한다. dic 에 없으면 그 전의 비교 문자인 'K' 즉, dic[msg[s:e]] 를 answer 에 담고 d..