Baekjoon 문제 풀기 (11720번 : 숫자의 합) Python

11720번 : 숫자의 합

1. 문제읽기


map함수 사용하기

n개의 공백없이 주어진 숫자를 int로 바꾸어 더해주면 된다.
n의 갯수를 따로 입력받는 것을 보아 반복문을 사용해도 괜찮을 것 같다.

2. 제출 코드


n = int(input())

list_n = list(str(input()))
int_n = list(map(int, list_n))

print(sum(int_n))

3. 공부할 것


map함수는 나온 결과들을 iterator 형태로 반환해준다.

iterator 타입

리스트, 딕셔너리, 튜플, 문자열 등…

그래서 map함수는 변수로 받을 때 그냥 받을 수 없고, list나 튜플 형태로 받아주는 것이다.
따라서 map함수로 입력값을 받아주고, int형으로 바꾼 뒤 바로 sum함수를 쓸 수 있다.
쉽게 코드를 바꿔보면 아래와 같다.

n = int(input())
print(sum(map(int, input())))

map함수를 공부했었는데, 제대로 알지 못해서 조금 돌아갔다.
숫자로 이루어진 큰 문자열이 주어진다해도 map함수로 바꿀 수 있다.
그리고 sum도 바로 쓸 수 있다.

댓글남기기