[Python(파이썬)] 리스트 가로, 세로 변환 (행, 열 변환)
그림과 같이 가로와 세로를 변환 하는 방법 test = [[1,2,3,4],[4,5,6,7],[8,9,10,11],[12,13,14,15]] 방법 1 - map 사용 X # map x >>> test2 = [list(i) for i in zip(*test)] # 출력 >>> test2 [[1, 4, 8, 12], [2, 5, 9, 13], [3, 6, 10, 14], [4, 7, 11, 15]] 방법 2 - map 사용 O # map o >>> new_test = list(map(list, zip(*test))) # 출력 >>> new_test [[1, 4, 8, 12], [2, 5, 9, 13], [3, 6, 10, 14], [4, 7, 11, 15]] ※ Asterisk(*) 연산자 하나의 * 연산자..
2021. 9. 1.
[프로그래머스/Level2] 위클리 챌린지 5주차
문제 설명 사전에 알파벳 모음 'A', 'E', 'I', 'O', 'U'만을 사용하여 만들 수 있는, 길이 5 이하의 모든 단어가 수록되어 있습니다. 사전에서 첫 번째 단어는 "A"이고, 그다음은 "AA"이며, 마지막 단어는 "UUUUU"입니다. 단어 하나 word가 매개변수로 주어질 때, 이 단어가 사전에서 몇 번째 단어인지 return 하도록 solution 함수를 완성해주세요. 제한사항 word의 길이는 1 이상 5 이하입니다. word는 알파벳 대문자 'A', 'E', 'I', 'O', 'U'로만 이루어져 있습니다. 입출력 예 word result "AAAAE" 6 "AAAE" 10 "I" 1563 "EIO" 1189 입출력 예 설명 입출력 예 #1 사전에서 첫 번째 단어는 "A"이고, 그다음은 ..
2021. 8. 30.
[프로그래머스/Level2] 삼각 달팽이
문제 설명 정수 n이 매개변수로 주어집니다. 다음 그림과 같이 밑변의 길이와 높이가 n인 삼각형에서 맨 위 꼭짓점부터 반시계 방향으로 달팽이 채우기를 진행한 후, 첫 행부터 마지막 행까지 모두 순서대로 합친 새로운 배열을 return 하도록 solution 함수를 완성해주세요. 제한사항 n은 1 이상 1,000 이하입니다. 입출력 예 n result 4 [1,2,9,3,10,8,4,5,6,7] 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] 나의 풀이 [Python(파이썬)] import itertools def solution(n): # 2차원 리스트 초기화 하기 temp = ..
2021. 8. 25.
[Python(파이썬)] 2차원 리스트를 1차원으로 만들기
2차원 리스트를 1차원으로 만들기 test = [[1], [2, 12], [3, 13, 11], [4, 14, 15, 10], [5, 6, 7, 8, 9]] testresult = [1, 2, 12, 3, 13, 11, 4, 14, 15, 10, 5, 6, 7, 8, 9] 2차원 리스트를 1차원으로 만드는 다양한 방법 1. sum 함수를 이용한 방법 - sum(리스트명, []) 2. itertools를 이용한 방법1 - itertools.chain(*iterables) 3. itertools를 이용한 방법2 - itertools.chain.from_iterable(iterables) 4. list comprehension을 이용한 방법 - reduce(집계 함수, iterable 데이터) 5. reduc..
2021. 8. 25.
[프로그래머스/Level2] 주식 가격
문제 설명 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 제한사항 prices의 각 가격은 1 이상 10,000 이하인 자연수입니다. prices의 길이는 2 이상 100,000 이하입니다. 입출력 예 prices return [1, 2, 3, 2, 3] [4, 3, 1, 1, 0] 입출력 예 설명 1초 시점의 ₩1은 끝까지 가격이 떨어지지 않았습니다. 2초 시점의 ₩2은 끝까지 가격이 떨어지지 않았습니다. 3초 시점의 ₩3은 1초뒤에 가격이 떨어집니다. 따라서 1초간 가격이 떨어지지 않은 것으로 봅니다. 4초 시점의 ₩2은 1초간 가격이 떨어지지 않았습니다. 5초 시점의 ₩3은..
2021. 8. 24.