001. 숫자의 합 구하기(백준11720번)

Daniel·2023년 11월 14일
0

문제

문제 분석하기

N개의 숫자가 주어지고 예제를 보면 숫자의 범위는 intlong 타입으로 받을 수 없다.
String 타입으로 받아야 할 것 같다.

N개의 길이를 담을 수 있는 배열을 초기화한다.
사용자의 입력을 Stirng -> char 타입으로 바꿔 위 배열에 넣어준다.

예제를 보면 10의 자리수의 수는 주어지지않는걸로 보아 10의 자리수는 신경쓰지 않아도 될 것 같다.

슈도코드 작성

  
String N = N 입력받기;  
  
char[] arr = String Nchar 형태의 배열에 초기화;char 타입의 배열을 순회하며 원소들을 정수로 바꿔 더해준다.

코드 구현하기

import java.io.BufferedReader;  
import java.io.BufferedWriter;  
import java.io.IOException;  
import java.io.InputStreamReader;  
import java.io.OutputStreamWriter;  
import java.util.StringTokenizer;
public class Main {  
  
    public static void main( String[] args ) throws IOException {  
       BufferedReader br = new BufferedReader( new InputStreamReader( System.in ) );  
       BufferedWriter bw = new BufferedWriter( new OutputStreamWriter( System.out ) );  
       StringTokenizer st = new StringTokenizer( br.readLine() );  
       
       // N 입력받기  
       String N = st.nextToken( );  
       
       // N개의 숫자 입력 받아(numList) char[] 로 초기화(numArr)  
       st = new StringTokenizer( br.readLine() );  
       String numList = st.nextToken();  
       char[] numArr = numList.toCharArray();  
       
       long sum = 0; // 결과값이 담길 변수 선언 및 초기화  
       
       // 위 char[] 순회하며 정수타입으로 바꾸어 sum에 더하기
       for ( char ch : numArr ) sum += ch - '0';  
       
       bw.write( sum + "\n" );  
       bw.flush();  
    }  
} // end
```![](https://velog.velcdn.com/images/dainel/post/38b6d41d-16a1-4e7e-af97-d35b01d9409c/image.png)
profile
응애 나 애기 개발자

0개의 댓글