programmers.co.kr/learn/courses/30/lessons/42579?language=python3 코딩테스트 연습 - 베스트앨범 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 programmers.co.kr dic : 장르별 재생 횟수가 저장된 딕셔너리 -> {'classic': 1450, 'pop': 3100} -> 정렬 후 [('pop', 3100), ('classic', 1450)] album : 장르별 노래의 재생된 횟수와 고유번호가 저장된 딕셔너리 -> {'classic': [[500, 0], [150, 2], [800, 3]], 'pop..
programmers.co.kr/learn/courses/30/lessons/42862# 코딩테스트 연습 - 체육복 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번 programmers.co.kr def solution(n, lost, reserve): answer = 0 students = [1] * n for i in lost: students[i-1] -= 1 for i in reserve: students[i-1] += 1 for i in range(n): if students[i] == 0: if i != 0 and students[i-1] >= 2: stud..
programmers.co.kr/learn/courses/30/lessons/42748 코딩테스트 연습 - K번째수 [1, 5, 2, 6, 3, 7, 4] [[2, 5, 3], [4, 4, 1], [1, 7, 3]] [5, 6, 3] programmers.co.kr def solution(array, commands): answer = [] for i in range(len(commands)): i, j, k = commands[i][0], commands[i][1], commands[i][2] tmp = sorted(array[i-1:j]) answer.append(tmp[k-1]) return answer
programmers.co.kr/learn/courses/30/lessons/72410 코딩테스트 연습 - 신규 아이디 추천 카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 programmers.co.kr import re def solution(new_id): # 1단계 answer = new_id.lower() # 2단계 answer = re.sub('[^0-9a-z\.\-\_]', '', answer) # 3단계 answer = re.sub('[.]+', '.', answer) # 4단계 if answer.startswith('.'): answer = answer[..
programmers.co.kr/learn/courses/30/lessons/12921 코딩테스트 연습 - 소수 찾기 1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요. 소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다. (1은 소수가 아닙니다.) 제한 조건 n은 2이상 programmers.co.kr import math def solution(n): answer = 0 arr = [1] * (n+1) for i in range(2, int(math.sqrt(n))+1): if arr[i]: for j in range(2*i, n+1, i): arr[j] = 0 for i in range(2, n+1): if arr[i]: answer += 1 r..
programmers.co.kr/learn/courses/30/lessons/42839 코딩테스트 연습 - 소수 찾기 한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 programmers.co.kr import itertools def solve(num): if num < 2: return False for i in range(2, num): if num % i == 0: return False return True def solution(numbers): answer = [] arr = [] for i in range(1, len(numbers)+1): ..
programmers.co.kr/learn/courses/30/lessons/59040 코딩테스트 연습 - 고양이와 개는 몇 마리 있을까 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr SELECT ANIMAL_TYPE, COUNT(*) AS count FROM ANIMAL_INS GROUP BY ANIMAL_TYPE ORDER BY ANIMAL_TYPE
programmers.co.kr/learn/courses/30/lessons/59041 코딩테스트 연습 - 동명 동물 수 찾기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr SELECT NAME, COUNT(*) AS COUNT FROM ANIMAL_INS GROUP BY NAME HAVING COUNT(NAME) > 1 ORDER BY NAME