SWEA [D1] 자릿수 더하기 - 2058 JAVA

YB·2026년 5월 4일
post-thumbnail

링크텍스트

설명

풀이 흐름 설명

이 문제는 입력받은 숫자의 각 자리 숫자를 모두 더하는 문제이다.

먼저 입력값을 T에 저장하였다. 이후 T가 0보다 큰 동안 반복하면서 T % 10을 이용해 가장 오른쪽 자리 숫자를 구하였다. 구한 값을 sum에 더한 뒤, T /= 10을 해서 방금 더한 오른쪽 자리 숫자를 제거하였다. 이 과정을 반복하면 숫자의 모든 자리를 오른쪽부터 하나씩 확인할 수 있다. 예를 들어 6789가 입력되면 9, 8, 7, 6 순서로 꺼내서 더하게 되고 최종적으로 각 자리 숫자의 합을 구할 수 있다.
시간복잡도: O(T), 공간복잡도: O(1)

회독

  • [ x ] 1회
  • 2회
  • 3회

코드

import java.util.Scanner;
import java.io.FileInputStream;

class Solution
{
	public static void main(String args[]) throws Exception
	{
		Scanner sc = new Scanner(System.in);
		int T;
		T=sc.nextInt();
		
        int sum = 0;
		for(int test_case = 1; test_case <= T; test_case++)
		{
			sum += T%10;
            T/=10;
		}
        
        System.out.print(sum);
	}
}

profile
안녕하세요

0개의 댓글