[C++] 백준 11720번 - 숫자의 합
https://www.acmicpc.net/problem/11720
11720번: 숫자의 합
첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다.
www.acmicpc.net
주어진 숫자의 각 자릿수의 숫자의 합을 구하는 문제
예를 들어 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
[C언어] 백준 11720번 : 숫자의 합
백준 11720번 : 숫자의 합 - 사용언어 : C언어 www.acmicpc.net/problem/11720 1. 문제 N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오. 2. 코드 #include int main(vo..
develop247.tistory.com
[백준] 11720번 숫자의 합 C / C++ 문제 풀이 문자열
문제 N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진
aorica.tistory.com