Algorithm/Programmers

[프로그래머스 1단계] 푸드 파이트 대회

Chae-ri🍒 2024. 6. 24. 03:13

https://school.programmers.co.kr/learn/courses/30/lessons/134240

 

프로그래머스

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

programmers.co.kr

 

def solution(food):
    answer = ''
    subAnswer = ''
    for i in range(1, len(food)) :
        eatingCount = food[i] // 2;
        if(eatingCount > 0):
            answer += str(i) * eatingCount
            subAnswer += str(i) * eatingCount
    answer += '0'
    answer += ''.join(reversed(subAnswer))
    return answer

 

파이썬에서 문자열을 붙이는 방법이 떠오르지 않았다..

근데 그냥 +로 붙이면 되고 join을 이용해도 된다

 

여기서 마주했던 Error

TypeError: can only concatenate str (not "reversed") to str

 

answer += reversed(subAnswer)로 코드를 짠 결과 나온 에러다. 

결론적으로 reversed()가 reversed 객체 타입으로 반환해줘서 타입이 str 타입과 달라서 나타나는 문제다.

 

-> 문자열 타입으로 바꿔주는 join을 사용하여 형변환을 해줬더니 해결!

728x90