코딩테스트

[코딩테스트][백준] Step1-12 2588번 : 곱셈

꿈꾸는개발자maker 2022. 9. 24. 18:28
728x90

 

문제 : 2588번: 곱셈 (acmicpc.net)

 

2588번: 곱셈

첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다.

www.acmicpc.net

 

 

 

세 숫자를 chatAt()으로 하나씩 받아서 곱할 수 있게하는 방법

주어진 두 숫자 중 첫번째 숫자와 두번째 숫자의 일의 자리와 곱하게하고

그 다음 십의 자리 그 다음 백의 자리와 곱하게 하여 각각 곱하게 되는 방식

 

chatAt() 뒤에  -'0'이 붙은 이유

char 데이터타입은 자동으로 아스키코드 전환되기 때문에 이를 방지하기 위해 -'0'을 해준 것

 

 

정답

import java.util.*;

public class Main {
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        int aa = sc.nextInt();
        String bb = sc.next(); //

        // -'0'을 해주는건 아스키코드 자동변환을 방지하기 위함
        System.out.println(aa * (bb.charAt(2)-'0'));        // 일의 자리수와 472 곱
        System.out.println(aa * (bb.charAt(1)-'0'));        // 십의 자리수와 472 곱
        System.out.println(aa * (bb.charAt(0)-'0'));        // 백의 자리수와 472 곱
        System.out.println(aa * (Integer.parseInt(bb)));    // 전체 계산
    }
}

 

728x90
반응형