푸드 파이트 대회 - Python

2023. 10. 17. 13:32공부/📝 프로그래머스

1. 풀이 코드

def solution(food):
    answer = ''
    for i in range(1, len(food)):
        answer += f"{i}" * (food[i] // 2)
    return answer + "0" + answer[::-1]


# Test Cases
print(solution([1, 3, 4, 6]) == "1223330333221")
print(solution([1, 7, 1, 2]) == "111303111")

  간단하게 풀었습니다.

 

2. 다른 사람 풀이 코드

1) 진짜로 앞뒤에 붙인 사람

def solution(food):
    answer ="0"
    for i in range(len(food)-1, 0,-1):
        c = int(food[i]/2)
        while c>0:
            answer = str(i) + answer + str(i)
            c -= 1
    return answer

  정말로 앞뒤로 붙였네요. 구현력이 강해보입니다.

 

2) enumerate() 쓴 사람

def solution(food):
    answer = ''
    for i,n in enumerate(food[1:]):
        answer += str(i+1) * (n//2)
    return answer + "0" + answer[::-1]

  저는 enumerate()를 쓰는 습관을 들이지 못해 이런 생각이 부족한 것 같습니다.

 


 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

'공부 > 📝 프로그래머스' 카테고리의 다른 글

예상 대진표 - Python  (0) 2023.10.18
점프와 순간 이동 - Python  (0) 2023.10.17
K번째수 - Python  (0) 2023.10.17
[1차] 비밀지도 - Python  (0) 2023.10.17
문자열 내 마음대로 정렬하기 - Python  (0) 2023.10.17