반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- Python
- 꾸준히
- Baekjoon
- 정리
- 10926
- greedy
- C
- c언어
- 그리디
- C Programming
- 문자열
- 코드엔진
- 알고리즘
- Implemention
- 설명
- Beakjoon
- 구현
- 심화1
- CSS
- 친절한 설명
- 문제풀이
- VS
- C 언어
- 입문
- 백준
- 10807
- 초보
- implement
- HTML
- 파이썬
Archives
- Today
- Total
안경잡이 구루루
백준 11720 ( 숫자의 합 ) [ Python ] 본문
반응형
나(방법1):
N= int(input())
num = input()
add=0
if N == len(num):
for i in range(len(num)):
add += int(num[i])
print(add)
완성된 코드는 위와 같다.
N= int(input())
num = input()
add=0
숫자의 개수를 나타내는 변수 N을 정수형으로 입력받는다. num 공백없이 나타낼 수로 문자형으로 받는다.
add는 num의 수가 더해진 최종값이 들어갈 변수로 0으로 초기화 한다.
if N == len(num):
for i in range(len(num)):
add += int(num[i])
print(add)
숫자의 개수를 나타낸 N과 입력받은 num의 개수가 참일 때 for 반복문을 이용해 값을 더해나가는 부분이다.
즉, for반복문으로 문자로 입력받았던 num의 길이만큼 배열을 이용해서 한자리씩 add에 더해나간다.
이때 10이나 11같이 1자리를 넘는 수의 대해서는 어떻게 처리하는지 궁금할 수 도 있지만 예제를 살펴보면 이 생각이 잘못됨을 알 수 있다.
예제입력 4를 보면 알 수 있듯이 1의 자리와 2의 자리는 구분하지 않고 1자리씩만 숫자로 취급한다는것을 알 수 있다.
결국 최종값인 add를 출력한다.
다른사람:
sum = 0
inp = int(input())
num = input()
for each in num:
sum += int(each)
print(sum)
완성된 코드는 위와 같다.
이 코드를 보고 다시 알게 된 점은 for 반복문은 어짜피 이 자체로 num 의 요소 하나씩을 each 에 돌려주기 때문에
나처럼 배열을 구지 이용할 필요없었다는 점이다.
반응형
'파이썬(Python) > 문제풀이(백준,BaekJoon)' 카테고리의 다른 글
백준 2675 ( 문자열 반복 ) [ Python ] (0) | 2020.07.04 |
---|---|
백준 10809 ( 알파벳 찾기 ) [ Python ] (2) | 2020.06.30 |
백준 11654 ( 아스키 코드 ) [ Python ] (0) | 2020.06.30 |
백준 4673 ( 셀프넘버 ) [ Python ] (0) | 2020.06.27 |
백준 15596 ( 정수 N개의 합 ) [ Python ] (0) | 2020.06.27 |