반응형

안녕하세요 밤샘코딩입니다~

[백준 1000번 파이썬 해설]

질문이 있으시면, 아래 오픈채팅방이나 메일로 보내주세요~

2시간 이내에 답변 드리겠습니다. 

 

오픈챗 링크 : https://open.kakao.com/o/srASNxef

메일 주소 : studying.all.night.1114@gmail.com

 

전달력을 높이기 위해 평어체를 사용하였습니다.


1. 문제 설명

 

 (1) 문제

  두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.

 

 (2) 입력

  첫째 줄에 A와 B가 주어진다. (0 < A, B < 10)

 

 (3) 출력

  첫째 줄에 A+B를 출력한다.

 

 (4) 예제 

  ① 예시 1

   - 입력 

   1 2

   - 출력 

   3

2. 문제 해석 및 총평

 

   두 수를 입력받은 뒤 파이썬의 덧셈 연산 방법을 묻고 있는 기본 문법 문제 이다. 빨리 풀고 넘어가면 되는 문제이긴 하나, 'input' 함수의 특징을 명확히 이해하기 위해 다양한 방법으로 풀어보았다. 이런식으로 input 문법을 쓸 수도 있구나~ 하고 깨닫고 넘어가면 좋을듯 하다. 

 


3. 코드

 

 (1) 모범답안

#모범답안
a, b = input().split()
a, b = int(a), int(b)
print(a+b)

   기본적으로 input().split()을 이용해 공백이 포함된 문자열을 입력받았고, 이때 str 자료형으로 입력된 두 수를 덧셈 연산하기 위해서는 int 자료형으로 변환해주어야 한다. (두번째 줄) 이후 두 수의 덧셈 결과를 print 함수를 출력하면 된다. 

 

 (2) 추가풀이

#추가풀이
a, b = map(int, input().split())
print(a+b)

   map함수를 이용하면 위 모범답안의 코드 두줄을 한줄에 쓸 수 있게 되는데, 위 코드에서 map함수의 역할은 "다중 형변환"이다. 굳이 일일히 형변환 해주지 않고, map함수 하나로 입력받은 원소들을 int형으로 바꿀 수 있다.  

 

 (3) 추가풀이

#추가풀이
lst = list(map(int, input().split()))
print(sum(lst))

   리스트 자료형에 대해 안다면, 리스트로 입력받은 뒤 map자료형으로 int로 원소들의 값을 변환해주는 위 코드를 사용해줄 수 있다. 이후 sum 함수를 이용하여 덧셈 마무리.

 

 (4) 추가풀이

#추가풀이
print(sum(list(map(int, input().split()))))

   (2), (3) 추가풀이를 종합하면 위와 같이 한줄에 쓸 수 있다. (*이렇게 코드를 줄여나가는 것 또한 파이썬의 묘미중 하나이다..!)

반응형