Today I Learned

[TIL] 백준 2576, 백준 11021 [21-10-29]

목차

TIL

- 백준 2576

- 백준 11021

 


TIL

 새벽까지 알바한 것이 영향을 줘서, 목표했던만큼 하지 못했다. 자료구조 공부를 멈추고, c언어를 다시배워야하나.. 고민이다.

 

 

백준 2576

https://www.acmicpc.net/problem/2576

 

2576번: 홀수

7개의 자연수가 주어질 때, 이들 중 홀수인 자연수들을 모두 골라 그 합을 구하고, 고른 홀수들 중 최솟값을 찾는 프로그램을 작성하시오. 예를 들어, 7개의 자연수 12, 77, 38, 41, 53, 92, 85가 주어지

www.acmicpc.net

  구현을 생각하는데 2분 정도 소요하고 구현하는데 3분 정도 걸린 것 같다. 문제를 보자마자 해결방법이 떠올랐다.

nums = [int(input()) for _ in range(7)]

odds = []
for num in nums:
    if num % 2 == 1:
        odds.append(num)

odds.sort()
total = 0
for i in range(len(odds)):
    total += odds[i]

if not odds:
    print(-1)
else:
    print(total)
    print(odds[0])

 

문제 풀이 시간 5분 내외

 

 

백준 11021

https://www.acmicpc.net/problem/11021

 

11021번: A+B - 7

각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다.

www.acmicpc.net

 쉬운 문제였다. 핵심은 input으로 받아올 때 str로 받아오기 때문에 연산을 할때 int형으로 변환해줘야 한다는 것이다.

 

n = int(input())
nums = [(input().split(' ')) for _ in range(n)]

for i in range(len(nums)):
    result = 'Case #'
    output = int(nums[i][0]) + int(nums[i][1])
    output = str(output)
    result = result + str(i + 1) + ': ' + output
    print(result)

 

 문제 풀이 시간 6분 48초