본문 바로가기
Algorithm

[구현/문자열] 백준 10823 더하기 2 - 파이썬(Python)

by jangThang 2022. 11. 8.
반응형

백준 온라인 저지

 

[ Contents ]

     

     

    1. 문제 (링크 참조)

     

    10823번: 더하기 2

    문자열 S가 여러 줄에 걸쳐서 주어진다. S의 길이는 최대 10,000이다. 포함되어있는 정수는 1,000,000보다 작거나 같은 자연수이다.

    www.acmicpc.net

     

     

     

    2. 문제 풀이

     입력의 끝이 정해지지 않은 문자열이 주어집니다. 문자열은 숫자와 쉼표로 이루어져 있으며, 숫자의 합을 구해야 합니다.

     

     

     

    3. 코드

    res = ''
    while True:
        try:
            tmp = input()
            res += tmp
        except EOFError:
            break
    
    numlist = list(map(int, res.split(",")))
    print(sum(numlist))

     입력이 더이상 주어지지 않으면 EOF Error를 호출합니다. 백준 온라인 저지에서는 입력이 끝나면 EOF Error를 호출하지만, 일반 IDE는 계속 입력을 기다립니다. 따라서, Ctrl+D를 통해서 강제 종료해야 IDE에서 원하는 결과를 볼 수 있습니다.

     

     

    import sys
    
    # 입력
    res = sys.stdin.read().replace('\n', '').split(',')
    print(sum(list(map(int, res))))

     try-except 구문을 쓰지 않고, read() 함수를 이용해서 입력을 끝까지 받을 수도 있습니다. read() 함수는 EOF까지 계속 입력받습니다.

     

    star가 되고나서 Tistory

    반응형

    댓글