-
[Programmers] 푸드 파이트 대회 _Python알고리즘/프로그래머스 2022. 11. 24. 00:40728x90반응형
문제
https://school.programmers.co.kr/learn/courses/30/lessons/134240
풀이
def solution(food): answer = '' arr1 = [] for i in range(len(food)) : foodLen = food[i] // 2 for _ in range(foodLen) : arr1.append(i) stri = "".join(str(s) for s in arr1) strin = stri[::-1] answer = stri + "0" + strin return answer # food[1] 부터 food[len(food)] 까지의 숫자를 2로 나누었을 때의 수가 그 음식이 차지하는 길이임 # 한쪽 길이를 먼저 채우고 0을 더한 후 같은 배열을 reverse 하여 붙이기
다른 사람의 풀이
from itertools import chain def solution(food): stack = [] for i in range(1, len(food)): for _ in range(food[i]//2): stack.append(i) return "".join(map(str, chain(stack, [0], stack[::-1])))
LIST'알고리즘 > 프로그래머스' 카테고리의 다른 글
[Programmers] 삼총사 _Python (2) 2022.12.01 [Programmers] 귤 고르기 _Python (1) 2022.11.26 [Programmers] 햄버거 만들기 _Python (1) 2022.11.24 [Programmers] 숫자 카드 나누기 _Python (0) 2022.11.23 [Python] 진수 변환하기 (숫자 <-> 문자열) bin(), oct(), hex(), foramt() (0) 2022.11.04