[ 백준 11720번 ] 숫자의 합
2021. 12. 9. 19:25ㆍ백준/단계별 문제
백준 11720번 / 7단계 / 숫자의 합
채점 결과는 다음과 같다
메모리 | 시간 | |
1번째 방법 | 1112 KB | 4 ms |
문제 풀이
아스키 코드값 문자 "0" ~ "9" 은 정수형으론 48 ~ 57이다
정수 0 ~ 9 와 문자 "0" ~ "9" 는 48의 차이가 난다
1. 숫자를 문자열로 입력받아서 공백없이 입력되어 있으므로 각 인덱스마다 - 48을 해주고 sum에 더하면 된다
Input = 54321
Number[0] = 53 - 48 = 5
sum = sum + Number[0]
Number[1] = 52 - 48 = 4
sum = sum + Number[1]
Number[2] = 51 - 48 = 3
sum = sum + Number[2]
Number[3] = 50 - 48 = 2
sum = sum + Number[3]
Number[4] = 49 - 48 = 1
sum = sum + Number[4]
sum = 15
코드
#include <stdio.h>
#include <algorithm>
using namespace std;
int main()
{
int n;
char number_string[101];
int sum = 0;
scanf("%d", &n);
for ( int i = 0; i < n; i++ ) {
scanf("%s", number_string);
sum += number_string[i] - 48;
}
printf("%d", sum);
}
'백준 > 단계별 문제' 카테고리의 다른 글
[ 백준 10809번 ] 문자열 반복 (0) | 2021.12.18 |
---|---|
[ 백준 10809번 ] 알파벳 찾기 (0) | 2021.12.13 |
[ 백준 11654번 ] 아스키 코드 (0) | 2021.12.05 |
[ 백준 1065번 ] 한수 (0) | 2021.12.02 |
[ 백준 4673번 ] 셀프 넘버 (0) | 2021.11.29 |