출처: https://meyouus.tistory.com/64 [정보 공유 - For Me For You For Us]
본문으로 바로가기

 

간단한 문제이다. 아무리 생각해도 가장 간단하게 할 방법은 하나밖에 없다고 생각했다:

def solution(s):
    return int(s)

단순히 문자열에 int()를 씌워서 돌려주면 되는 것이다.

 

 

※ 다른 사람의 풀이

다음 풀이는 프로그래머스에서 가장 많은 좋아요를 받은 풀이이다:

def strToInt(str):
    result = 0
    for idx, number in enumerate(str[::-1]):
        if number == '-':
            result *= -1
        else:
            result += int(number) * (10 ** idx)
    return result

 

[::-1]을 통해 문자열을 거꾸로 나열해주고, enumerate을 통해 idx, number 값을 부여를 한 후 이에 대하여 number 값이 음수면 결과에 -1을 곱해준다. 아니라면 result에 각 자릿수를 더해준다.

 

왜 이렇게 풀었는지는 잘 모르겠지만, 나의 풀이가 +1점만 받은 것으로 보아, 이런식으로 푸는게 더 나았나 보다.