[백준][C++] 11720번 숫자의 합
숫자의 합
문제 링크
분석
첫째 줄에 숫자의 개수가 주어집니다.
둘째 줄에 숫자가 공백 없이 주어집니다.
모든 숫자의 합을 출력해주어야 합니다.
숫자가 공백 없이 주어졌으며, 1자릿수의 수를 더하는 문제이기 때문에 다음과 같은 방법들이 있습니다.
- 문자열로 한번에 입력 받고, 인덱스로 접근하여
int로 형번환하는 방법 char자료형을 사용해 한 글자씩 입력받고int로 형변환하는 방법
입력되는 숫자의 개수가 최대 100개이기 때문에 int 혹은 long long자료형이 표현할 수 있는 자릿수를 벗어나게 되기 때문에 해당 방법으로는 문제를 해결할 수 없습니다.
풀이
#include <iostream>
using namespace std;
int main()
{
int N, total{};
char ch;
cin >> N;
for (int i = 0; i < N; i++)
{
cin >> ch;
total += ch - 48;
}
cout << total;
}
성능 요약
시간 복잡도는 상수 시간에 끝나기 때문에 $O(1)$입니다.
공간 복잡도는 고정된 크기의 상수 공간을 사용하기 때문에 $O(1)$입니다.
메모리: 2020 KB
시간: 0 ms
댓글남기기