import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// StringTokenizer st = new StringTokenizer(br.readLine());
int n = Integer.parseInt(br.readLine());
String str = br.readLine();
int sum = 0;
for (int i = 0; i <n; i++) {
sum += str.charAt(i)-'0';
}
System.out.println(sum);
}
}
이번 문제는 첫번째 줄에 입력할 수N의 갯수, 두번째 줄에는 N개만큼의 숫자들이 칸 구분없이 나열되어있으며, 이 두번째 줄의 각 숫자들을 더한값을 출력하는 문제이다.
처음에는 StringTokenizer
를 이용하여 ""로 각 숫자들을 구분하여 더해주려고 했으나, 지난번 사용했던 char
형태를 통해서 값을 구하도록 코드를 변경했다.
먼저 첫줄에 int n
을 입력받아 반복문에 적용하였고, 두번째 줄에 입력받은 숫자를 String
형태로 입력받아 charAt(i)
를 이용하여 각각의 숫자들에 대해서 아스키코드를 구한 다음, 0의 ASCII 코드 10진수만큼 빼준 값들을 모두 더하여 sum
에 저장한 후, 그대로 출력하여 문제를 해결하였다.
(0의 ASCII코드는 "48"이다.)
중요!!
작은따옴표
``
로 문자나 숫자를 감싸게 되면, 10진수의 ASCII코드로 변환하여 값이 나타나게 된다.