알고리즘/백준
[C++] 백준 11720번 - 숫자의 합
Esunn
2022. 7. 27. 01:49
https://www.acmicpc.net/problem/11720
주어진 숫자의 각 자릿수의 숫자의 합을 구하는 문제
예를 들어 15라면 1 + 5 = 6
이런식으로 합을 출력하는 문제이다.
#include <iostream>
#include <string>
using namespace std;
int main() {
int n;
string a;
int result = 0;
cin >> n >> a;
for (int i = 0; i < n; i++) {
result += a[i] - '0';
}
cout << result;
}
문자열을 이용해서 풀어줬다. 이 문제도 아스키코드를 이용해서 풀었다.
사실 이 문제는 조금 사연이 많은 문제이다.
이 문제를 처음에 풀기위해서 10으로 나누는 나머지를 활용했는데
N이 100까지 나오기에 숫자가 100개가 나올 수 있다는 뜻이기에
정수 자료형으로는 담을 수 없다는것을 깨닫고 다른 풀이를 보고 풀었다.
문제 분류도 안보고 그냥 Class1에 있는 문제를 선택한거라 문자열로 접근한다는 생각이
너무 참신하게 느껴졌다. 문자열로 접근하니 구현자체는 그렇게 어렵지 않은 문제였다.
참고한 글들
https://develop247.tistory.com/22