월간 코드 챌린지 시즌1 6

프로그래머스(Python) 68936번 쿼드압축 후 개수 세기 풀이

Python으로 구현한 68936번 쿼드압축 후 개수 세기 문제 풀이입니다. https://programmers.co.kr/learn/courses/30/lessons/68936 def solution(arr) : answer = [0, 0] len_value = len(arr) def func(x, y, len_v) : temp = arr[x][y] for i in range(x, x + len_v) : for j in range(y, y + len_v) : if arr[i][j] != temp : temp_len_v = len_v // 2 func(x, y, temp_len_v) func(x, y + temp_len_v, temp_len_v) func(x + temp_len_v, y, temp_len..

프로그래머스(Python) 70129번 이진 변환 반복하기 풀이

Python으로 구현한 70129번 이진 변환 반복하기 문제 풀이입니다. https://programmers.co.kr/learn/courses/30/lessons/70129 코딩테스트 연습 - 이진 변환 반복하기 programmers.co.kr def solution(s) : answer = [] # 이진 변환 횟수, 제거된 0의 개수 count_bin = 0 count_zero = 0 while s != '1' : # 1번 수행 : 모든 0을 제거 count_zero += s.count('0') s = s.replace('0', '') # 2번 수행 len_value = len(s) # 진법 변환 s = bin(len_value)[2:] count_bin += 1 answer.append(count_..

프로그래머스(Python) 68644번 두 개 뽑아서 더하기 풀이

Python으로 구현한 68644번 두 개 뽑아서 더하기 문제 풀이입니다. https://programmers.co.kr/learn/courses/30/lessons/68644 코딩테스트 연습 - 두 개 뽑아서 더하기 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한 programmers.co.kr from itertools import combinations def solution(numbers) : answer = [] for value in combinations(numbers, 2) : answer.append(sum(value..

프로그래머스(Python) 68935번 3진법 뒤집기 풀이

Python으로 구현한 68935번 3진법 뒤집기 문제 풀이입니다. https://programmers.co.kr/learn/courses/30/lessons/68935 코딩테스트 연습 - 3진법 뒤집기 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 n은 1 이상 100,000,000 이하인 자연수 programmers.co.kr def solution(n) : answer = '' while n > 0 : a, b = divmod(n, 3) answer += str(b) n //= 3 answer = int(answer, 3) return answer 1. n이 0이 될 때..

프로그래머스(Python) 70128번 내적 풀이

Python으로 구현한 70128번 내적 문제 풀이입니다. https://programmers.co.kr/learn/courses/30/lessons/70128 코딩테스트 연습 - 내적 길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요. 이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 programmers.co.kr def solution(a, b): answer = 0 for i in range(len(a)) : answer += a[i] * b[i] return answer 1. 반복문을 통해 같은 인덱스를 갖는 a 리스트와 b ..

프로그래머스(Python) 68645번 삼각 달팽이 풀이

Python으로 구현한 68645번 삼각 달팽이 문제 풀이입니다. https://programmers.co.kr/learn/courses/30/lessons/68645 코딩테스트 연습 - 삼각 달팽이 5 [1,2,12,3,13,11,4,14,15,10,5,6,7,8,9] 6 [1,2,15,3,16,14,4,17,21,13,5,18,19,20,12,6,7,8,9,10,11] programmers.co.kr def solution(n) : data = [[0 for _ in range(n)] for _ in range(n)] x, y = -1, 0 num = 1 for i in range(n) : for j in range(i, n) : if i % 3 == 0 : # 아래로 이동 x += 1 elif i ..