11720 숫자의 합 (파이썬, Java)

https://www.acmicpc.net/problem/11720

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

첫번째 줄에는 숫자의 수가 적힙니다. 두번째 줄에는 첫번째 줄 숫자만큼되는 길이의 숫자로 나누어 더합니다.

즉, 첫째줄: 5, 둘째줄: 54321 이라면 답은 5+4+3+2+1 = 15 입니다.

그러므로 저는 주어진 b를 리스트에 나누어 담은 다음, 리스트의 모든 인자를 더하여 구했습니다.

파이썬

a = int(input())        
b = input()              
c = [int(i) for i in b]  

print(sum(c))       

Java

import java.util.Scanner;  // input을 scanner 클래스로 받음

public class Main_11720 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);  // 스캐너로 인풋을 받는다.

        int a = sc.nextInt();   // 숫자의 개수를 정수로 입력
        String b = sc.next();      // 숫자들을 문자열로 입력 받음

        int sum = 0;   // 합을 0으로 초기화

        // 문자열의 각 문자를 숫자로 바꿔서 더함
        for (int i = 0; i < a; i++) {
            sum += b.charAt(i) - '0';  // 문자를 숫자로 변환
            // 자바에서 char 타입은 int로 변환하려면 0을 빼줘야합니다. 
            // 안그러면 문자 5의 유니코드 정수값 53이 나옵니다.
        }
        System.out.println(sum);
    }
}
profile
모든걸 기록하며 성장하고 싶은 개발자입니다. 현재 크래프톤 정글 8기를 수료하고 구직활동 중입니다.

0개의 댓글