문제1) 홀수 (초등1)
7개의 자연수가 주어질 때, 이들 중 홀수인 자연수들을 모두 골라 그 합을 구하고, 고른 홀수들 중 최소값을 찾는 프로그램을 작성하시오.
예를 들어, 7개의 자연수 12, 77, 38, 41, 53, 92, 85가 주어지면 이들 중 홀수는 77, 41, 53, 85이므로 그 합은
77 + 41 + 53 + 85 = 256
이 되고,
41 < 53 < 77 < 85
이므로 홀수들 중 최소값은 41이 된다.
첫 째 줄부터 일곱 번째 줄까지 한 줄에 하나의 자연수가 주어진다. 주어지는 자연수는 100보다 작다.
12
77
38
41
53
92
85
홀수가 존재하지 않는 경우에는 첫째 줄에 -1을 출력한다.
홀수가 존재하는 경우 첫째 줄에 홀수들의 합을 출력하고, 둘째 줄에 홀수들 중 최소값을 출력한다.
256
41
이전에 풀었던 방식과 비슷하게 풀어가는 것이 많아서
생각만 조금 하면 금방 풀리는 문제이다.
한 가지 특이 케이스로 첫째줄이 -1인 경우에는,짝수가 없는 것으로
numArr = []
for i in range(7):
numArr.append(int(input()))
def find_odd_num(numArr):
oddNumArray = []
for num in numArr:
if num%2 != 0:
oddNumArray.append(num)
return oddNumArray
def total_sum(numArr):
result = 0
numArr = find_odd_num(numArr)
if not numArr:
result = -1
else:
for num in numArr:
result += num
return result
def sort_Arr(numArr):
numArr = find_odd_num(numArr)
numArr.sort()
return numArr[0]
print(total_sum(numArr))
if total_sum(numArr) != -1:
print(sort_Arr(numArr))