[문제1] 가장 큰 수 (16점, 제한시간 1초)
7개의 자연수가 주어질 때, 이들 중에서 홀수로서 가장 큰 수와 짝수로서 가장 큰 수를 각각 찾아 그 합을 구하는 프로그램을 작성하시오.
예를 들어, 67, 18, 97, 34, 78, 97, 9가 주어지면 이들 중 홀수는 67, 97, 97, 9이며, 그 중에서 가장 큰 수는 97이다. 또한 짝수는 18, 34, 78이며 이 중에서 가장 큰 수는 78이다. 따라서 합은 97 + 78 = 175가 된다.
입력에 홀수(또는 짝수)가 존재하지 않는 경우에는 짝수(또는 홀수)만을 계산한다.
첫 번째 줄에 7개의 자연수가 공백으로 구분되어 주어진다.
입력되는 수는 100보다 작은 수이다.
67 18 97 34 78 97 9
175
하나의 케이스를 고려하지 못하고 정답을 제출해서 답이 틀렸었다.
이 생각을 못한게 아쉽다.
case. 짝수가 존재하지 않는 경우, 홀수가 존재하지 않는 경우
# https://codeup.kr/problem.php?id=4031
numbers = list(map(int,input().split(" ")))
result_sum = 0
even_Array = []
odd_Array = []
for i in range(len(numbers)):
if numbers[i]%2 == 0:
even_Array.append(numbers[i])
else:
odd_Array.append(numbers[i])
even_Array.sort()
odd_Array.sort()
if not even_Array:
print(odd_Array[len(odd_Array)-1])
elif not odd_Array:
print(even_Array[len(even_Array)-1])
else:
print(even_Array[len(even_Array)-1] + odd_Array[len(odd_Array)-1])