728x90
[백준알고리즘] 11720번: 숫자의 합 -C++
예제 3과 같이 긴 숫자가 들어올 수 있다. 최대 100자리까지 들어 올 수 있는데, 이를 담을 수 있는 자료형은 없다.
따라서 문자열로 받아주고 각각의 위치를 옮기면서 인덱싱해서 문자 단위로 처리해줘야 한다.
처음에 atoi를 썼었다. 안 틀리게 짰던 것 같았는데 틀렸다.
그래서 char '0' 값을 빼주도록 짰다.
#include <iostream>
#include <string>
int main(void)
{
int l;
std::cin >> l;
std::string num;
std::cin >> num;
int total = 0;
char n = NULL;
for (int i = l - 1; i >= 0; i--)
total += num[i] - '0';
std::cout << total;
return 0;
}
잘못된 점이나 부족한 점 지적해주시면 감사하겠습니다
728x90
'algorithm > 백준알고리즘' 카테고리의 다른 글
[백준알고리즘] 2675번: 문자열 반복 -C++ (0) | 2021.01.11 |
---|---|
[백준알고리즘] 10809번: 알파벳 찾기 -C++ (0) | 2021.01.11 |
[백준알고리즘] 1065번: 한수 -C++ (0) | 2021.01.11 |
[백준알고리즘] 1316번: 그룹 단어 체커 -C++ (0) | 2021.01.11 |
[백준알고리즘] 4344번: 평균은 넘겠지 -Python (0) | 2021.01.08 |