본문 바로가기
Daily 코딩-Python

[파이썬]백준1000번 (A+B)

by $#spacecoding#$ 2022. 9. 4.

[Python3] A+B

백준코딩 1000번 문제 A+B

백준 코딩 웹사이트에서 [문제]->[단계별로 풀어보기]->[입출력과 사칙연산]에 있는 문제이다. 처음 백준 코드에서 자신의 코드를 제출하려고 하면 흔히 하는 실수가 문제에 값을 '입력' 받는다고 했으니 아래처럼 input() 함수만 사용하려고 하는 경우가 많다. 

A=input()
B=input()

 

 

 

KEYWORDS 분석

문제를 잘 읽어보면 몇 가지 키워드들을 볼 수 있다. 

  • 두 정수 A, B를 입력 받음
  • 첫째 줄에 A, B 가 주어진다. 

이렇게 첫째 줄에 두 개의 정수를 입력받아야 하기 때문에 A와 B를 각각 하나씩 입력받게 되면 키워드에 나온 조건을 벗어나게 된다. 또한 input() 함수는 한 개의 변수만 입력받을 수 있기 때문에 이를 해결하기 위해 split()이라는 함수를 같이 사용한다. split() 함수는 문자열(string)을 받아서 각 단어들을 리스트에 배정하는 함수이다. 이때 input() 함수가 파이썬의 기본 설정 상 입력받은 값은 문자열(string)로 받게 되므로 split()을 사용하여 여러 개의 변수들을 받을 수 있게 한다. 

 

 

WARNING

문제에서 정수 값을 출력해야 하기 때문에 int()를 이용해 정수형으로 변환해주는 과정이 필요하다. 여기서 주의해야 할 점이 A와 B를 더한 후 int()로 전환할 경우 문제가 발생한다. 

A,B=int().split()
print(int(A+B))

첫째줄에 int()로 받은 값들은 string에 해당하므로 만약 A="7" B="3"이라면  A+B="73" 이 돼버리고 이를 int()로 변환하면 숫자 73이 나오게 되므로 오답이 된다. 

 

위의 개념들을 이용해서 아래와 같은 solution을 얻게 된다. 

Solution

a,b=input().split() # a,b값을 입력받아서 split()을 통해 a,b에 각각 할당
print(int(a)+int(b))

 

 

 




댓글