One Step Two Step
[파이썬] 1000 「A+B」, 10998 「AxB」, 1001 「A-B」, 1008 「A/B」 본문
[파이썬] 1000 「A+B」, 10998 「AxB」, 1001 「A-B」, 1008 「A/B」
DEVILOW 2025. 9. 10. 23:01
해당 문제를 처음 접하면 다들 당연하게 "이건 이렇게 하면 정답이지"라는 생각으로 이렇게 정답을 제출할 것이다.


하지만... 틀려서 멘붕이 올 것이다.( 본인도 틀려서 당황했었다 .·°՞(¯□¯)՞°·.)
틀린 이유가 input()의 경우에는 한 줄의 입력을 받기에
a에서는 전부 입력을 받을 수 없고,
b의 경우에는 입력이 받을 게 없어서 틀리게 된다
그렇다면 어떤 방식으로 해야 정답일까?
"1 2"로 한 줄로 입력이 되기에 한 번에 받아야 하기에 map()함수를 사용해야 한다.
map() 함수에 대해 사용할 정도로만 간단하게 설명을 하겠습니다.
● map() 함수란
파이썬에서 반복 가능한 자료형(iterable)의 각 요소에 특정 함수를 적용해 새로운 결과를 생성하는 내장 함수입니다.
- 기본 문법 -
map(function, iterable1, iterable2, ... )
function: " 무엇을 할 것인지" 정하는 규칙 (ex. 제곱, 대문자로 바꾸기, 타입 변환)
iterable: "어떤 대상들에 적용할지" 정하는 자료 (ex. 리스트, 문자열, 튜플 등)
ex)
[문자열 대문자 변환]
words = ["apple", "banana", "cherry"]
result = map(str.upper, words)
print(list(result))
☞ ["APPLE", "BANANA", "CHERRY"]
function = str.upper (대문자로 바꾸는 규칙)
iterable = ["apple", "banana", "cherry"]
[타입 변환]
nums = ["1", "2", "3", "4"]
result = map(int, nums)
print(list(result))
☞ [1, 2, 3, 4]
function = int (정수로 바꾸는 규칙)
iterable = ["1", "2", "3", "4"] (문자열 리스트)


후....... 정답이당!
그리고 10998번, 1001번, 1008번 문제도 map() 함수를 이용하면 됩니다.
10998 [AxB]



1001 [A-B]



1008 [A/B]



'백준 > Python 배우기 (1~50)' 카테고리의 다른 글
| [파이썬] 2588 「곱셈」 (0) | 2025.09.17 |
|---|---|
| [파이썬] 2558 「A+B-2」 (0) | 2025.09.13 |
| [파이썬] 10430 「나머지」 (0) | 2025.09.12 |
| [파이썬] 10869 「사칙연산」 (0) | 2025.09.12 |
| [파이썬] 2557 「Hello World」 (0) | 2025.09.08 |