반응형
문제
N개의 정수가 주어지면, 이 정수들의 합 S의 부호를 구하는 프로그램을 작성하시오.
입력
총 3개의 테스트 셋이 주어진다. 각 테스트 셋의 첫째 줄에는 N(1 ≤ N ≤ 100,000)이 주어지고, 둘째 줄부터 N개의 줄에 걸쳐 각 정수가 주어진다. 주어지는 정수의 절댓값은 9223372036854775807보다 작거나 같다.
출력
총 3개의 줄에 걸쳐 각 테스트 셋에 대해 N개의 정수들의 합 S의 부호를 출력한다. S=0이면 "0"을, S>0이면 "+"를, S<0이면 "-"를 출력하면 된다.
풀이
from sys import stdin
for i in range(3):
n = int(stdin.readline())
s = 0
for k in range(n):
s += int(stdin.readline())
if s == 0: print("0")
elif s > 0: print("+")
else: print("-")
3개의 테스트 셋이 있고, 각 셋마다 N개의 정수가 존재
각 테스트 셋의 첫째 줄에는 N이 주어지고, 나머지 줄에는 각 정수가 주어진다.
주어진 정수의 절댓값은 9223372036854775807보다 작거나 같다.
N개의 정수들의 합 S의 부호를 출력하면 된다.
처음에는 그냥 int(input())
으로 썼더니 시간초과가 나서 stdin.readline()
을 이용하여 해결했다.
반응형
'Develop > 알고리즘' 카테고리의 다른 글
[백준/Python] Bronze V #25304 영수증 (0) | 2023.01.11 |
---|---|
[백준/Python] Bronze V #4101 크냐? (0) | 2023.01.11 |
[백준/text] Unranked #2555 생일 출력하기 (0) | 2023.01.11 |
[백준/Python] Silver IV #1748 수 이어 쓰기 1 (0) | 2023.01.11 |
[백준/Python] Silver IV #2217 로프 (0) | 2023.01.04 |
Comment