dalgorithm
달공의 개발기
dalgorithm
전체 방문자
오늘
어제
  • 분류 전체보기 (170)
    • Back-end (0)
    • Java (11)
    • 자료구조 (7)
    • Network (31)
    • Database (9)
    • Baekjoon Online (24)
    • 클라우드 (6)
    • Android (15)
      • Kotlin (14)
    • AI (27)
      • Machine Learning&Deep Learn.. (27)
    • Web (23)
      • Webhacking (17)
      • WebProgramming (6)
    • 기술면접 (1)
      • JAVA&자료구조 (0)
      • Spring (0)
      • 컴퓨터구조&운영체제 (0)
      • 네트워크 (0)
      • 데이터베이스 (0)
    • CTF 스터디 (15)
    • 대외활동 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 인공지능
  • 딥러닝
  • 포너블
  • db
  • 네트워크
  • 머신러닝
  • CTF
  • kotlin
  • cs
  • 자료구조
  • Guacamole
  • 자바
  • 코드리뷰
  • 침입탐지
  • 웹해킹
  • java
  • 클라우드
  • gcp
  • 데이터베이스
  • python #백준

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
dalgorithm

달공의 개발기

[python] 백준 2576번_홀수
Baekjoon Online

[python] 백준 2576번_홀수

2021. 1. 24. 19:08
728x90

출처: www.acmicpc.net/problem/2576

 

2576번: 홀수

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

www.acmicpc.net

홀수 출처분류

시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
1 초 128 MB 13843 7150 6311 53.506%

문제

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

예를 들어, 7개의 자연수 12, 77, 38, 41, 53, 92, 85가 주어지면 이들 중 홀수는 77, 41, 53, 85이므로 그 합은

77 + 41 + 53 + 85 = 256이 되고, 41 < 53 < 77 < 85이므로 홀수들 중 최솟값은 41이 된다.

입력

입력의 첫째 줄부터 일곱 번째 줄까지 한 줄에 하나의 자연수가 주어진다. 주어지는 자연수는 100보다 작다.

출력

홀수가 존재하지 않는 경우에는 첫째 줄에 -1을 출력한다. 홀수가 존재하는 경우 첫째 줄에 홀수들의 합을 출력하고, 둘째 줄에 홀수들 중 최솟값을 출력한다.

예제 입력 1

12

77

38

41

53

92

85

예제 출력 1

256 41

예제 입력 2

2

4

20

32

6

10

8

예제 출력 2

-1


이 문제에서는 런타임 에러를 해결하기 위해 sys.stdin.readline을 사용해주었다. 이는 한 줄의 문자열을 반환하는데 사용된다. 리스트를 생성하고, 총 7개의 숫자를 입력하기 위해 for문을 이용한다. 

 

입력값이 2로 나눈 나머지가 0이 아닐경우, 홀수이기 때문에 nList에 추가한다.

출력값은 홀수로 이루어진 nList의 총합과 최솟값을 출력해야하고 만약 홀수가 없으면 -1을 출력한다.

 

여기서 내장함수인 sum()과 min()을 이용해주면 된다.

 

1
2
3
4
5
6
7
8
9
10
11
12
import sys
input = sys.stdin.readline
nList = []
for i in range(7):
    a = int(input())
    if a % 2 != 0:
        nList.append(a)
if nList:
    print(sum(nList))
    print(min(nList))
else:
    print(-1)
cs
728x90

'Baekjoon Online' 카테고리의 다른 글

[python] 백준 5622번_다이얼  (0) 2021.01.26
[python] 백준 1157번_단어 공부  (0) 2021.01.23
[python] 백준 1065번_한수  (0) 2021.01.22
[python] 백준 1057번_토너먼트  (0) 2021.01.21
[python] 백준 2908번_상수  (0) 2021.01.20
    'Baekjoon Online' 카테고리의 다른 글
    • [python] 백준 5622번_다이얼
    • [python] 백준 1157번_단어 공부
    • [python] 백준 1065번_한수
    • [python] 백준 1057번_토너먼트
    dalgorithm
    dalgorithm

    티스토리툴바