728x90
📌 문제
10869번: 사칙연산
두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오.
www.acmicpc.net
📌 내 코드
a, b = input().split()
a = int(a)
b = int(b)
print(a+b, a-b, a*b, int(a/b), a%b)
💡 풀이
채점 결과를 확인하니 예전에 풀었을 때보다 시간이 12ms 더 소모됐다.
그래서 이전 제출 코드를 확인해보니 sep="\n" 을 print()에 추가되어 있었다.
문제에서는 각 연산의 출력 결과를 한 줄에 다 하는 게 아니라 각각 한 줄씩 해줘야 했는데도 정답으로 인정됐다.
혹시 콤마 (,)를 기준으로 자동 줄바꿈이 일어난 건가 싶었는데, 파이참에서 돌려보니 한 줄에 모두 출력돼서 그건 또 아닌 것 같다.
그래서 sep="\n" 에 대해 찾아보니 따로 설정하지 않을 경우, 기본값으로 설정된 공백으로 사용된다고 나와 있다.
📌 수정 후 코드
a, b = input().split()
a = int(a)
b = int(b)
print(a+b, a-b, a*b, int(a/b), a%b, sep="\n")
📌 정리
sep = "\n"
sep : seperate의 줄임말
다중 출력 문자열에서 "각 문자열 객체 사이를 무엇으로 구분 할 것인가"를 나타냄
sep은 무조건 문자열로 설정되어야 함
기본값은 ' ' (띄어쓰기; 공백)이며, 따로 sep를 설정하지 않는다면 기본값이 사용됨
적극적인 피드백은 언제나 환영입니다:)