가오리의 코딩일기

[1744] 수 묶기 본문

Python/백준

[1744] 수 묶기

류경혜 2022. 8. 6. 03:00

→ 곱셈을 하는 경우: 0과 음수, 양수와 양수, 음수와 음수

 덧셈을 하는 경우: 0과 양수, 양수와 음수, 1과 음수, 1과 양수

number = int(input())
positive = []
negative = []
result = 0
for _ in range(number):
    n = int(input())
    if n == 1:
        result += 1
    elif n > 1:
        positive.append(n)
    else:
        negative.append(n)
positive.sort(reverse=True)
negative.sort()

if len(positive) % 2 == 0:
    for i in range(0, len(positive), 2):
        result += positive[i] * positive[i+1]
else:
    for i in range(0, len(positive)-1, 2):
        result += positive[i] * positive[i+1]
    result += positive[-1]

if len(negative) % 2 == 0:
    for i in range(0, len(negative), 2):
        result += negative[i] * negative[i+1]
else:
    for i in range(0, len(negative)-1, 2):
        result += negative[i] * negative[i+1]
    result += negative[-1]
print(result)

 

'Python > 백준' 카테고리의 다른 글

[1212] 8진수 2진수  (0) 2022.08.14
[1476] 날짜 계산  (0) 2022.08.08
[11662] 민호와 강호  (0) 2022.08.06
[2875] 대회 or 인턴  (0) 2022.08.05
[11399] ATM  (0) 2022.08.05