코테 문제풀이

001 숫자의 합 구하기 백준온라인 11720

임진묵식뽕뽑기 2025. 6. 2. 23:28

숫자의 합 성공

 
시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 256 MB 306800 170781 139449 56.059%

문제

N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다.

출력

입력으로 주어진 숫자 N개의 합을 출력한다.

예제 입력 1 복사

1
1

예제 출력 1 복사

1

예제 입력 2 복사

5
54321

예제 출력 2 복사

15

예제 입력 3 복사

25
7000000000000000000000000

예제 출력 3 복사

7

예제 입력 4 복사

11
10987654321

예제 출력 4 복사

46

출처

 

나의 풀이 

 

import java.util.Scanner;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        //입력받은 숫자 N
        int N = sc.nextInt();
        
        String sNum = sc.next();
        char[] cNum = sNum.toCharArray();
        int sum = 0;
        for (int i = 0 ; i <cNum.length; i ++){
            sum += cNum[i]-'0'; //String을 아스키코드를 이용해 아니면 -48을 하면 숫자로 계산 
        }
        System.out.println(sum);
        
    }
}

 

뽀인트

1. 100자리 이므로 int로 못받는다 Sring으로 받아서 N을 숫자로 변환 

2. sNum 문자로 받아서 char[] cNum 배열 만들어서 때려박기

3. 배열전체 탐색 후 더하기 

핵심 배열에 들어있는 문자형을 숫자형으로 바꿔서 어떻게 더할지 고민이었는데 아스키코드 이용 '0' 을이용하거나 

-48을로 연산하면 숫자로 처리