프로그래머스(Python) 풀이/Level.2 59

프로그래머스(Python) 12980번 점프와 순간 이동 풀이

Python으로 구현한 12980번 점프와 순간 이동 문제 풀이입니다. https://programmers.co.kr/learn/courses/30/lessons/12980 코딩테스트 연습 - 점프와 순간 이동 OO 연구소는 한 번에 K 칸을 앞으로 점프하거나, (현재까지 온 거리) x 2 에 해당하는 위치로 순간이동을 할 수 있는 특수한 기능을 가진 아이언 슈트를 개발하여 판매하고 있습니다. 이 아이언 슈 programmers.co.kr def solution(n) : answer = 0 while n > 0 : if n % 2 == 1 : answer += 1 n //= 2 return answer 1. n이 0 이하가 될 때까지 반복 수행하는데, 현재 n 값을 2로 나눈 나머지가 1일 경우 한 칸 ..

프로그래머스(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 ..

프로그래머스(Python) 17679번 [1차] 프렌즈4블록 풀이

Python으로 구현한 17679번 [1차] 프렌즈4블록 문제 풀이입니다. https://programmers.co.kr/learn/courses/30/lessons/17679 코딩테스트 연습 - [1차] 프렌즈4블록 프렌즈4블록 블라인드 공채를 통과한 신입 사원 라이언은 신규 게임 개발 업무를 맡게 되었다. 이번에 출시할 게임 제목은 "프렌즈4블록". 같은 모양의 카카오프렌즈 블록이 2×2 형태로 4개가 붙 programmers.co.kr def solution(m, n, board) : answer = 0 board = list(list(b) for b in board) while True : delete = [] flag = False # 제거할 위치 찾기 for i in range(m-1) : ..

프로그래머스(Python) 42584번 주식가격 풀이

Python으로 구현한 42584번 주식가격 문제 풀이입니다. https://programmers.co.kr/learn/courses/30/lessons/42584 코딩테스트 연습 - 주식가격 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 제한사항 prices의 각 가격은 1 이상 10,00 programmers.co.kr from collections import deque def solution(prices) : answer = [] prices = deque(prices) while prices : cnt = 0 price = prices.popleft() for i in ..

프로그래머스(Python) 12981번 영어 끝말잇기 풀이

Python으로 구현한 12981번 영어 끝말잇기 문제 풀이입니다. https://programmers.co.kr/learn/courses/30/lessons/12981 코딩테스트 연습 - 영어 끝말잇기 3 ["tank", "kick", "know", "wheel", "land", "dream", "mother", "robot", "tank"] [3,3] 5 ["hello", "observe", "effect", "take", "either", "recognize", "encourage", "ensure", "establish", "hang", "gather", "refer", "reference", "estimate", "executive"] [0,0] programmers.co.kr def solut..

프로그래머스(Python) 42583번 다리를 지나는 트럭 풀이

Python으로 구현한 42583번 다리를 지나는 트럭 문제 풀이입니다. https://programmers.co.kr/learn/courses/30/lessons/42583 코딩테스트 연습 - 다리를 지나는 트럭 트럭 여러 대가 강을 가로지르는 일차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 다리에는 트럭이 최대 bridge_length대 올라갈 programmers.co.kr def solution(bridge_length, weight, truck_weights) : answer = 0 bridge = [0] * bridge_length now_weight = 0 while truck_weights : # 트럭 빠짐 now_weigh..

프로그래머스(Python) 42578번 위장 풀이

Python으로 구현한 42578번 위장 문제 풀이입니다. https://programmers.co.kr/learn/courses/30/lessons/42578 코딩테스트 연습 - 위장 programmers.co.kr def solution(clothes) : answer = 1 info = {} for cloth in clothes : cloth_type = cloth[1] if cloth_type in info : info[cloth_type] += 1 else : info[cloth_type] = 2 for value in info.values() : answer *= value return answer - 1 1. info 딕셔너리에 각 의상의 종류를 key로 설정하여 개수를 증가시킨다. 2. i..

프로그래머스(Python) 42883번 큰 수 만들기 풀이

Python으로 구현한 42883번 큰 수 만들기 문제 풀이입니다. https://programmers.co.kr/learn/courses/30/lessons/42883 코딩테스트 연습 - 큰 수 만들기 programmers.co.kr def solution(number, k) : stack = [number[0]] for num in number[1:] : # stack과 k가 0보다 크고, stack의 마지막 요소가 num보다 작을 경우 반복 while len(stack) > 0 and k > 0 and stack[-1] 0 : stack = stack[:-k] return ''.join(stack) 1. n..

프로그래머스(Python) 12905번 가장 큰 정사각형 찾기 풀이

Python으로 구현한 12905번 가장 큰 정사각형 찾기 문제 풀이입니다. https://programmers.co.kr/learn/courses/30/lessons/12905 코딩테스트 연습 - 가장 큰 정사각형 찾기 [[0,1,1,1],[1,1,1,1],[1,1,1,1],[0,0,1,0]] 9 programmers.co.kr import itertools def solution(board) : for i in range(1, len(board)) : for j in range(1, len(board[0])) : if board[i][j] == 1 : board[i][j] = min(board[i-1][j], board[i][j-1], board[i-1][j-1]) + 1 return max(iter..

프로그래머스(Python) 17686번 [3차] 파일명 정렬 풀이

Python으로 구현한 17686번 [3차] 파일명 정렬 문제 풀이입니다. https://programmers.co.kr/learn/courses/30/lessons/17686 코딩테스트 연습 - [3차] 파일명 정렬 파일명 정렬 세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다. 저장소 서버에는 프로그램 programmers.co.kr def solution(files) : answer = [] for file in files : head, number, tail = '', '', '' check = False for i in range(len(file)) : if file[i].isdigit() : numb..