전체보기
-
월간 코드 챌린지 시즌3: 빛의 경로 사이클코딩 테스트/Level 2 2021. 9. 15. 13:05
https://programmers.co.kr/learn/courses/30/lessons/86052 코딩테스트 연습 - 빛의 경로 사이클 각 칸마다 S, L, 또는 R가 써져 있는 격자가 있습니다. 당신은 이 격자에서 빛을 쏘고자 합니다. 이 격자의 각 칸에는 다음과 같은 특이한 성질이 있습니다. 빛이 "S"가 써진 칸에 도달한 경우, 직진 programmers.co.kr 파이썬 생각의 흐름에 따라.... def solution(grid): answer = [] path = set() for direction in ((1, 0), (0, 1), (-1, 0), (0, -1)): for i in range(len(grid)): for j in range(len(grid[0])): cycle_length ..
-
월간 코드 챌린지 시즌3: 없는 숫자 더하기코딩 테스트/Level 1 2021. 9. 14. 17:24
https://programmers.co.kr/learn/courses/30/lessons/86051 코딩테스트 연습 - 없는 숫자 더하기 0부터 9까지의 숫자 중 일부가 들어있는 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. 제한 programmers.co.kr 파이썬 def solution(numbers): return sum({i for i in range(10)} - set(numbers)) def solution(numbers): return sum(set(range(10)) - set(numbers)) def solution(numbers): return 45 -..
-
위클리 챌린지 7주차 입실 퇴실코딩 테스트/Level 2 2021. 9. 14. 16:32
https://programmers.co.kr/learn/courses/30/lessons/86048 코딩테스트 연습 - 7주차 사회적 거리두기를 위해 회의실에 출입할 때 명부에 이름을 적어야 합니다. 입실과 퇴실이 동시에 이뤄지는 경우는 없으며, 입실 시각과 퇴실 시각은 따로 기록하지 않습니다. 오늘 회의실에는 programmers.co.kr 나보다 먼저 왔다가 나중에 간 사람들을 찾는 문제라고 생각하면 쉽다. set을 이용해 풀면 크게 어렵진 않다. 시간제한의 함정이 있지만... from itertools import combinations def solution(enter, leave): answer = [0 for _ in range(len(enter))] groups = set() for ind..
-
역 피라미드 만들기코딩 테스트/Level 1 2021. 9. 8. 22:00
12 11 10 9 8 7 6 5 4 3 2 1 2 3 4 5 6 7 8 9 10 11 12 11 10 9 8 7 6 5 4 3 2 1 2 3 4 5 6 7 8 9 10 11 10 9 8 7 6 5 4 3 2 1 2 3 4 5 6 7 8 9 10 9 8 7 6 5 4 3 2 1 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 1 2 3 4 5 6 7 8 7 6 5 4 3 2 1 2 3 4 5 6 7 6 5 4 3 2 1 2 3 4 5 6 5 4 3 2 1 2 3 4 5 4 3 2 1 2 3 4 3 2 1 2 3 2 1 2 1 생각의 흐름... def solution(n: int): for i in range(n, 0, -1): for j in range(n - i): print(' ' * len(s..
-
위클리 챌린지 6주차코딩 테스트/Level 1 2021. 9. 6. 21:48
https://programmers.co.kr/learn/courses/30/lessons/85002 코딩테스트 연습 - 6주차 복서 선수들의 몸무게 weights와, 복서 선수들의 전적을 나타내는 head2head가 매개변수로 주어집니다. 복서 선수들의 번호를 다음과 같은 순서로 정렬한 후 return 하도록 solution 함수를 완성해주세요 programmers.co.kr 파이썬 def solution(weights, head2head): return list(map(lambda x: x[0], sorted(sorted(sorted([[index + 1, weights[index], sum([1 for char_index, char in enumerate(head2head[index]) if cha..
-
월간 코드 챌린지 시즌1 스타수열코딩 테스트/Level 3 2021. 9. 6. 19:55
https://programmers.co.kr/learn/courses/30/lessons/70130 코딩테스트 연습 - 스타 수열 programmers.co.kr 파이썬 from collections import Counter def solution(array): if len(array) == 1: return 0 count = Counter(array) answer = -1 for key in count: if count[key] * 2 < answer: continue index, length = 0, 0 max_key = key while index < len(array) - 1: if (array[index] != max_key and array[index + 1] != max_key) or a..
-
위클리 챌린지 5주차코딩 테스트/Level 2 2021. 9. 4. 11:09
https://programmers.co.kr/learn/courses/30/lessons/84512 코딩테스트 연습 - 5주차 사전에 알파벳 모음 'A', 'E', 'I', 'O', 'U'만을 사용하여 만들 수 있는, 길이 5 이하의 모든 단어가 수록되어 있습니다. 사전에서 첫 번째 단어는 "A"이고, 그다음은 "AA"이며, 마지막 단어는 "UUUUU"입니 programmers.co.kr 파이썬 itertools를 이용하면 쉽게 풀 수 있습니다. from itertools import product def solution(word): return sorted( [''.join(each) for i in range(1, 6) for each in product('AEIOU', repeat=i)] ).in..
-
위클리 챌린지 4주차 직업군 추천하기코딩 테스트/Level 1 2021. 8. 24. 10:17
https://programmers.co.kr/learn/courses/30/lessons/84325 코딩테스트 연습 - 4주차 개발자가 사용하는 언어와 언어 선호도를 입력하면 그에 맞는 직업군을 추천해주는 알고리즘을 개발하려고 합니다. 아래 표는 5개 직업군 별로 많이 사용하는 5개 언어에 직업군 언어 점수를 부 programmers.co.kr 파이썬 def solution(table, languages, preference): jobs = {} for row in table: each = row.split() jobs[each[0]] = {each[1]: 5, each[2]: 4, each[3]: 3, each[4]: 2, each[5]: 1} result = {} for each in sorted(..