https://www.acmicpc.net/problem/11720
N 크기의 문자열 생성 & char을 int로 바꿔서 연산하기가 핵심이다.
sum에 입력된 각 자리 값을 더할 수 있습니다.
숫자가 아스키코드이므로 C++ 에서 char을 int로 변환하는 방법은
- '0' 을 하여 아스키코드 값이 실제 숫자 값에 대응할 수 있도록 한다.
ex.
'1' - '0' = 49 - 48 = 1
'2' - '0' = 50 - 48 = 2
'3' - '0' = 51 - 48 = 3
#include <stdio.h>
using namespace std;
int main(){
int N;
int sum = 0;
scanf("%d", &N);
char text[N];
scanf("%s", text);
for (int i=0; i<N; i++){
sum += text[i] - '0';
}
printf("%d", sum);
return 0;
}
파이썬만 하다버릇 하니 int()가 그리웠다.
그래도 기억 해두자 ..