본문 바로가기

분류 전체보기

(388)
<Level 2> 기능 개발 with 파이썬 문제 설명 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 기능보다 먼저 개발될 수 있고, 이때 뒤에 있는 기능은 앞에 있는 기능이 배포될 때 함께 배포됩니다. 먼저 배포되어야 하는 순서대로 작업의 진도가 적힌 정수 배열 progresses와 각 작업의 개발 속도가 적힌 정수 배열 speeds가 주어질 때 각 배포마다 몇 개의 기능이 배포되는지를 return 하도록 solution 함수를 완성하세요. 제한 사항 작업의 개수(progresses, speeds배열의 길이)는 100개 이하입니다. 작업 진도는 100 미만의 자연수입니다. 작업 속도는 100 이하의 자..
<구간 합> 11660번 구간 합 구하기 5 with 파이썬 문제 N×N개의 수가 N×N 크기의 표에 채워져 있다. (x1, y1)부터 (x2, y2)까지 합을 구하는 프로그램을 작성하시오. (x, y)는 x행 y열을 의미한다. 예를 들어, N = 4이고, 표가 아래와 같이 채워져 있는 경우를 살펴보자. 1 2 3 4 2 3 4 5 3 4 5 6 4 5 6 7 여기서 (2, 2)부터 (3, 4)까지 합을 구하면 3+4+5+4+5+6 = 27이고, (4, 4)부터 (4, 4)까지 합을 구하면 7이다. 표에 채워져 있는 수와 합을 구하는 연산이 주어졌을 때, 이를 처리하는 프로그램을 작성하시오. 입력 첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 ..
<월간회고> 05월 | 언제쯤 성과가 나타날까 들어가며 제목이 다소 부정적으로 보일 수 있으나, 필자는 단순한 의문을 던졌을 뿐이다. 상반기 시즌이 끝나가는데 아직까지 큰 성과는 없다. 그래도 지난 10월 개발을 시작했을 당시에는 상상도 못할 정도로 발전했고, 언젠가는 좋은 결과가 나타나리라 믿어의심치 않는다. 아직 상반기가 끝나지는 않았지만 지금까지의 성과는 카카오 코테 합격, 배민(우테캠) 2차 코테 합격 정도가 있다. 남은 건 우테캠 면접과 싸피 면접이다. 면접 결과를 받을 때 쯤이면 6월이 끝나감과 동시에 상반기가 마무리된다. 그 때 다시 천천히 하반기 계획을 세울 예정이다. 이번 달에는 지난 달에 작성했던대로 충실하게 이행했다. 다만 포트폴리오는 우선순위를 낮췄다. 거의 절반 이상을 했으나 상반기가 끝남에 따라 중요도가 많이 떨어졌기 때문에..
<Level 1> 두 개 뽑아서 더하기 with 파이썬 문제 설명 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한사항 numbers의 길이는 2 이상 100 이하입니다. numbers의 모든 수는 0 이상 100 이하입니다. def solution(numbers): answer = [] answer_set = set() for i in range(len(numbers) - 1): for j in range(i+1, len(numbers)): answer_set.add(numbers[i] + numbers[j]) answer = list(answer_set) answer.sort() ret..
<그리디> 15903번 카드 합체 놀이 with 파이썬 문제 석환이는 아기다. 아기 석환이는 자연수가 쓰여져있는 카드를 갖고 다양한 놀이를 하며 노는 것을 좋아한다. 오늘 아기 석환이는 무슨 놀이를 하고 있을까? 바로 카드 합체 놀이이다! 아기 석환이는 자연수가 쓰여진 카드를 n장 갖고 있다. 처음에 i번 카드엔 ai가 쓰여있다. 카드 합체 놀이는 이 카드들을 합체하며 노는 놀이이다. 카드 합체는 다음과 같은 과정으로 이루어진다. x번 카드와 y번 카드를 골라 그 두 장에 쓰여진 수를 더한 값을 계산한다. (x ≠ y) 계산한 값을 x번 카드와 y번 카드 두 장 모두에 덮어 쓴다. 이 카드 합체를 총 m번 하면 놀이가 끝난다. m번의 합체를 모두 끝낸 뒤, n장의 카드에 쓰여있는 수를 모두 더한 값이 이 놀이의 점수가 된다. 이 점수를 가장 작게 만드는 것이..
<이분탐색> 1300번 K번째 수 with 파이썬 문제 세준이는 크기가 N×N인 배열 A를 만들었다. 배열에 들어있는 수 A[i][j] = i×j 이다. 이 수를 일차원 배열 B에 넣으면 B의 크기는 N×N이 된다. B를 오름차순 정렬했을 때, B[k]를 구해보자. 배열 A와 B의 인덱스는 1부터 시작한다. 입력 첫째 줄에 배열의 크기 N이 주어진다. N은 105보다 작거나 같은 자연수이다. 둘째 줄에 k가 주어진다. k는 min(109, N2)보다 작거나 같은 자연수이다. 출력 B[k]를 출력한다. 정답비율 37.646% 알고리즘 분류 #이분탐색 import sys input = sys.stdin.readline n = int(input()) k = int(input()) start, end = 1, n*n while start = k : answer..
< DP > 9465번 스티커 with 파이썬 문제 상근이의 여동생 상냥이는 문방구에서 스티커 2n개를 구매했다. 스티커는 그림 (a)와 같이 2행 n열로 배치되어 있다. 상냥이는 스티커를 이용해 책상을 꾸미려고 한다. 상냥이가 구매한 스티커의 품질은 매우 좋지 않다. 스티커 한 장을 떼면, 그 스티커와 변을 공유하는 스티커는 모두 찢어져서 사용할 수 없게 된다. 즉, 뗀 스티커의 왼쪽, 오른쪽, 위, 아래에 있는 스티커는 사용할 수 없게 된다. 모든 스티커를 붙일 수 없게된 상냥이는 각 스티커에 점수를 매기고, 점수의 합이 최대가 되게 스티커를 떼어내려고 한다. 먼저, 그림 (b)와 같이 각 스티커에 점수를 매겼다. 상냥이가 뗄 수 있는 스티커의 점수의 최댓값을 구하는 프로그램을 작성하시오. 즉, 2n개의 스티커 중에서 점수의 합이 최대가 되면서 ..
<정렬> 2437번 저울 with 파이썬 문제 하나의 양팔 저울을 이용하여 물건의 무게를 측정하려고 한다. 이 저울의 양 팔의 끝에는 물건이나 추를 올려놓는 접시가 달려 있고, 양팔의 길이는 같다. 또한, 저울의 한쪽에는 저울추들만 놓을 수 있고, 다른 쪽에는 무게를 측정하려는 물건만 올려놓을 수 있다. 무게가 양의 정수인 N개의 저울추가 주어질 때, 이 추들을 사용하여 측정할 수 없는 양의 정수 무게 중 최솟값을 구하는 프로그램을 작성하시오. 예를 들어, 무게가 각각 3, 1, 6, 2, 7, 30, 1인 7개의 저울추가 주어졌을 때, 이 추들로 측정할 수 없는 양의 정수 무게 중 최솟값은 21이다. 입력 첫 째 줄에는 저울추의 개수를 나타내는 양의 정수 N이 주어진다. N은 1 이상 1,000 이하이다. 둘째 줄에는 저울추의 무게를 나타내는..
<Level 1> 완주하지 못한 선수 with 파이썬 문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다. def solution(participant, completion): answer = ..
<후기> 2021카카오인턴십 코딩테스트 합격 후기 0. 소개 2021년 카카오 채용연계형 인턴십이 열렸다. 1년에 한 번만 공채를 여는 카카오에서 상반기에 채용에 도전해보기 위해 지원했다. 올해 카카오 신입 공채는 하반기에 있으며, 공식 채용연계형 인턴십은 상반기와 하반기에 한번씩 열리는 것으로 알고 있다. 카카오 기술 인턴십은 서류를 받지 않고 신청만 하게 되어있다. 즉 신청만 하면 코딩테스트를 볼 수 있고, 테스트 합격 시 자기소개서와 서류를 제출한다. 1. 일정 2021년 5월 8일 2. 문항 수 5 문제 (240분) 3. 난이도 프로그래머스 기준 : Lv1, Lv1, Lv3, Lv4, ?? 백준 기준 : S1, S1, G1, P5, ?? (주관적인 기준입니다.) 4. 후기 역시 문제 어렵기로 유명한 카카오답다. 시험 치는 주에 프로그래머스에서 2..