까잉이의 개발노트

[ 백준 11720 ] 숫자의 합 JAVA(자바) 문제풀이 본문

개발문제풀이

[ 백준 11720 ] 숫자의 합 JAVA(자바) 문제풀이

까잉이 2022. 6. 30. 14:19

이 문제는 처음 받는 숫자는 1~100개 숫자를 입력받으며, 다음 둘째 줄 숫자의 총 자리수를 입력하는 것이다.

그리고 둘째 줄 숫자는 처음 받은 숫자만큼 입력할 수 있고 둘째 줄 숫자 총 합을 구하는 문제이다.

사실 나는 문제가 이해가 안되서 예제를 뚫어져라 봐서 이해했다;;


풀이순서

1. 첫번째 숫자 입력을 받고 1~100 사이의 숫자가 맞는지 if문으로 걸러준다.

2. 2번째 숫자를 String으로 입력 받고 입력받은 자릿수첫번째에 받은 숫자보다 큰지 확인한다

3. for문을 돌려 2번째 입력받은 것을 charAt으로 한자리씩 더하는데

int로 받기 때문에 아스키 코드 값으로 가져온다

그래서 '1'은 아스키코드값으로 49인데 '0'은 아스키코드로 48이므로

끝에 '0'을 빼주면 제대로 입력받은 숫자로 변환이 된다.

 

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);

		int num1 = sc.nextInt();

		if(num1 < 0 && num1 > 100) return;

		sc.nextLine();

		String num2 = sc.nextLine();

		if(num2.length() > num1) return;

		int result = 0;

		for(int i = 0; i < num2.length(); i++) {
			result += num2.charAt(i) - '0';
		}

		System.out.println(result);

	}

}
Comments