A+B -3
문제는 다음과 같습니다.
이번 문제는 여러 개의 테스트 케이스를 입력받고, 각 케이스마다 두 정수 A와 B를 더한 값을 출력하는 문제입니다. 단순한 문제처럼 보이지만, 반복문을 활용하여 입력을 처리하는 기본 개념을 익히기에 적합한 문제입니다.
문제를 입력조건에 맞춰 요약하자면
테스트 케이스의 개수 T가 첫 번째 줄에 주어집니다.
그 후 T개의 줄에 걸쳐 두 개의 정수 A,B가 주어집니다.
각 테스트 케이스마다 A와 B를 더한 값을 출력해야 합니다.
입력 조건
- 첫 번째 줄: 정수 T (1 ≤ T ≤ 1,000)
- 이후 T개의 줄: 정수 A, B (0 < A, B < 10)
이 문제를 해결하기 위해 저희는 for 반복문을 활용할 수 있습니다.
파이썬에서는 input() 함수를 사용하여 입력을 받고, map()을 활용해 여러 개의 숫자를 정수형으로 변환할 수 있습니다.
map()사용이 아직 어색하신 분들은 저의 티스토리 Map() 을 참고하시길 바랍니다.
저희 해답 코드는 다음과 같습니다.
T = int(input())
for _ in range(T):
A, B = map(int, input().split())
print(A + B)
이전에 계속 배웠던 A,B 모두 동시에 변수로 할당한 것을 바로 더 해주는 것 밖에 없습니다.
이 문제의 정답 비율은 약 58%입니다. 이전에 계속해서 map, split을 익숙하게 사용해 왔기 때문에 이러한 입출력 문제를 반복문에 활용하는 것은 이제 단계별로 풀어봤다면, 어렵지 않은 단계인 거 같습니다.
오답 코드 중 보여주기 좋은 코드가 있어 한번 긁어왔습니다.
아래는 다른 사람의 공개된 오답 코드입니다.
오답 코드긴 하지만, 이러한 코드도 매우 가독성이 좋습니다. map()의 특성은 제너레이터로 바로 값을 넘겨주는 방식인데 이를 집계 함수와 적용하면 편리합니다. 따라서 바로 입력받는 값을 sum() 즉 합계를 때려 출력하는 방식을 선택하신 거 같습니다.
하지만 단순하게 이 코드는 print() 사용하지 않아 틀린 거 같습니다.
아마 Jupyter 환경에서 코딩해서 그런지 print() 사용 안하시고 한 거 같습니다.
Jupyter는 print() 사용하지 않아도 출력이 나올 수 있습니다.
'BaekJoon Reivew' 카테고리의 다른 글
단계별로 풀어보기 백준_25304번 (0) | 2025.02.06 |
---|---|
단계별로 풀어보기 백준_8393번 (0) | 2025.02.06 |
단계별로 풀어보기 백준_2739번 (0) | 2025.02.06 |
단계별로 풀어보기 백준_2480번 (0) | 2025.02.05 |
단계별로 풀어보기 백준_2525번 (0) | 2025.02.05 |