less than 1 minute read

A+B

백준 알고리즘을 처음 접했다. 풀어보자

untitle

나는 여태 c언어로만 공부했었다가 파이썬을 손에 잡은 지 얼마 안되었고 이제 막 본격적으로 시작하려 한다.

위 문제에 나는 하나하나 입력을 받아 출력하는 함수를 만들었고, 다른사람은 어떻게 했을지 궁금해서 찾아본 결과

print(sum(map(int,input().split())))

이 한 줄짜리 문장을 보고 깜짝 놀랬다.

그래서 위 코드를 분석해 보기로 했다.

  • print() : 출력문
  • sum() : int문의 합계
  • map() : 여러 요소의 하나의 함수를 대응

map(function, iterable). 첫 번째 매개변수로 함수가, 두 번째 매개변수로 반복 가능한 자료형 (list, tuple…) 지정 map 함수의 반환값은 map 객체임으로 해당 자료형을 list 또는 tuple로 변환해야 한다.

따라서, map의 첫 매개변수로 int를, 두 번째 매개변수로 input() 함수를 통해 입력값을 받고, 이 입력값들을 split() 으로 나누었다.

split() 함수도 두 가지의 option을 받는데, 첫 번째는 나누는 기준 char, 두 번째는 나누는 횟수의 최댓값 (최대값 이상은 나누지 않고 반환)이 있다. 이 option factor을 지정해 주지 않으면 ‘ ‘ (띄워쓰기, space)를 기준으로 split하여 반환해 준다.

따라서 위 코드는 input으로 인자를 받은 뒤, split() = space를 기준으로 인자를 자르고, 이 인자들을 int형으로 반환한 뒤 이 각 인자들을 sum하여 print문으로 출력하는 코드인 것이다.

Tags:

Categories:

Updated:

Leave a comment