Python/Algorithm
백준 11720 : 숫자의 합
채애
2021. 1. 19. 18:09
Python3
sum 함수를 사용하지 않고 코딩했을 때,
N = int(input()) # 숫자 입력받기
num = input() # 문자열 입력받기
sum = 0
for i in range(N):
sum += int(num[i]) # sum에 문자열의 앞 index부터 N개 만큼 숫자형으로 바꾸어서 더해주기
print(sum)
갯수N을 입력받은 후, num에 N개의 숫자를 입력받는다.
for문과 range 사용은 >> [Python/Function & Grammer] - Python : for문 여기서 확인~
sum 함수 이용
그럼 sum 함수를 이용하고 코딩했을 때는?
sum(iterable)
# 반환형 : 인자로 들어온 iterable 내부 모든 요소의 합
sum(iterable, start)
# 첫번째 인자 : iterable
# 두번째 인자 : 처음으로 또 더해줄 숫자
# 반환형 : 인자로 들어온 iterable 내부 모든 요소의 합 + start 값
sum() 함수를 이용하여 백준 11720번을 풀자면,
sum(map(int,input()))
# 입력받은 문자열을 map()함수로 리스트에 숫자로 넣은후
# sum()함수를 이용하여 모두 더해준다.
이렇게 사용 할 수 있다.
전체 코드는 이렇다.
N = input()
print(sum(map(int,input())))
사실상 이 코드는 N 을 입력은 받지만, 사용하지 않게 된다.
더 짧고 간단하게 작성하려면 sum()함수를 이용하면 된다.
해당 문제 : https://www.acmicpc.net/problem/11720
11720번: 숫자의 합
첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다.
www.acmicpc.net

더 많은 입출력 예제는 사이트에 있다.