-
[Python] 10952번 A+B - 5Coding Test/백준 2024. 12. 8. 17:56
A+B - 5
문제두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
입력
입력은 여러 개의 테스트 케이스로 이루어져 있다.
각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10)
입력의 마지막에는 0 두 개가 들어온다.
출력
각 테스트 케이스마다 A+B를 출력한다.
예제 입력 1 복사
1 1 2 3 3 4 9 8 5 2 0 0
예제 출력 1 복사
2 5 7 17 7
첫 번째 풀이
#덧셈 함수 def add(A, B): return A+B #입력값을 저장해둘 리스트 cases = [] #입력 여러번 받고 마지막에 0 0 입력 시 루프 종료 while True: A,B = map(int, input().split()) if A==0 & B==0: for A,B in cases: print(add(A,B)) break else: cases.append((A,B))
while을 사용해서 A, B의 값이 0,0 일 때 탈출하고 리스트에 저장된 A, B 값을 출력하도록 했다.
GPT에게 확인해 보니
개선이 필요한 점:
1. if A==0 & B==0:
이 코드를 if A==0 and B==0: 로 바꾸어야 한다.
자바 하던 습관 때문에 &로 했는데, 파이썬은 and를 사용하고 &사용 시 비트연산자라서 오류가 날 수 있다고 한다.
2. for A, B in cases:
print(add(A, B))출력 코드를 while 문 밖으로 빼면 가독성이 더 좋아질 수 있다고 한다.
개선 후 코드
#덧셈 함수 def add(A, B): return A+B #입력값을 저장해둘 리스트 cases = [] #입력 여러번 받고 마지막에 0 0 입력 시 루프 종료 while True: A,B = map(int, input().split()) if A==0 and B==0: break else: cases.append((A,B)) for A,B in cases: print(add(A,B))
'Coding Test > 백준' 카테고리의 다른 글
[Python] 2438번: 별 찍기 - 1 (1) 2024.12.09 [Python] 2739번: 구구단 (1) 2024.12.09 [Python] 10950번 : A+B - 3 (3) 2024.12.07 [Python] 10872번 : 팩토리얼 (4) 2024.12.07 [Python] 2741번 : N 찍기 (2) 2024.12.07