일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- hackerrank
- 프로그래머스 파이썬
- 데이콘
- dacon
- 맥북
- 편스토랑
- SW Expert Academy
- programmers
- 자연어처리
- 캐치카페
- 더현대서울 맛집
- Kaggle
- ChatGPT
- Git
- ubuntu
- 프로그래머스
- 파이썬
- Baekjoon
- 편스토랑 우승상품
- leetcode
- Docker
- 백준
- 우분투
- 금융문자분석경진대회
- 코로나19
- AI 경진대회
- gs25
- Real or Not? NLP with Disaster Tweets
- PYTHON
- github
- Today
- Total
솜씨좋은장씨
[BaekJoon] 10823번 : 더하기 2 (Python) 본문

코딩 1일 1문제! 오늘의 문제는 백준의 더하기 2 입니다.
10823번: 더하기 2
문자열 S가 여러 줄에 걸쳐서 주어진다. S의 길이는 최대 10,000이다. 포함되어있는 정수는 1,000,000보다 작거나 같은 자연수이다.
www.acmicpc.net
👨🏻💻 문제 풀이
먼저 이 문제는 여러 줄에 걸쳐 입력 받은 문자열 속 숫자를 모두 더한 값을 구하는 문제입니다.
문자열을 입력 받을 때에는 while 반복문을 활용하여 여러 줄을 입력 받는데
이때 마지막 줄 이후에 반복문을 멈추는데에는 try except 에서 EOFError를 활용하여
마지막 줄일 경우 반복문이 멈추도록 합니다.
그리고 예제 문자열을 잘 살펴보면
10,20,
3
0,50
,1
00
10,20,
3
0, 50 ~~
이걸 공백없이 한줄로 이어붙이면
10,20,30,50,100
위와 같이 , 로 이어져있는 숫자 형태의 문자열이 되는 것을 볼 수 있습니다.
따라서 입력 받은 문자열은 string 변수에 계속 공백없이 이어붙여 하나의 문자열로 만들어줍니다.
그 후에 ","를 기준으로 문자열을 split 하고 map을 활용하여 문자열 리스트를 정수 리스트로 바꾼 뒤에
그 리스트의 정수를 sum으로 더하여 결과를 내면 끝! 입니다.
아래는 정답 코드 입니다.
👨🏻💻 코드 ( Solution )
def sum2(string):
numbers = list(map(int, string.split(",")))
return sum(numbers)
if __name__ == "__main__":
string = ""
while True:
try:
temp = input()
string += temp
except EOFError:
break
print(sum2(string))
GitHub - SOMJANG/CODINGTEST_PRACTICE: 1일 1문제 since 2020.02.07
1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_PRACTICE development by creating an account on GitHub.
github.com
'Programming > 코딩 1일 1문제' 카테고리의 다른 글
[BaekJoon] 2954번 : 창영이의 일기장 (Python) (0) | 2021.08.28 |
---|---|
[BaekJoon] 1931번 : 회의실 배정 (Python) (0) | 2021.08.27 |
[BaekJoon] 11758번 : CCW (Python) (0) | 2021.08.25 |
[Programmers] 위클리 챌린지 4주차 - 직업군 추천하기 (Python) (0) | 2021.08.23 |
[BaekJoon] 2755번 : 이번학기 평점은 몇점? (Python) (0) | 2021.08.22 |