프로그래밍/java
[백준] 2588번 문제 - 곱셈 - JAVA(자바)
MG_세대
2023. 6. 14. 13:49
문제
(세 자리 수) × (세 자리 수)는 다음과 같은 과정을 통하여 이루어진다.

(1)과 (2)위치에 들어갈 세 자리 자연수가 주어질 때 (3), (4), (5), (6)위치에 들어갈 값을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 (1)의 위치에 들어갈 세 자리 자연수가, 둘째 줄에 (2)의 위치에 들어갈 세자리 자연수가 주어진다.
출력
첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다.
딱 보았을때 첫번째 입력값은 그대로 유지하되
두번째 입려값의 백의자리 십의자리 일의자리만 뽑아서 (3),(4),(5)위치에 들어갈 값을 구해야지라고 생각했다.
import java.util.Scanner;
public class b2588 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
System.out.println(a * (b % 10));
System.out.println(a * ((b % 100 - b % 10)) / 10);
System.out.println(a * (b / 100));
System.out.println(a * b);
}
}
필요한 자리수의 값이외에 0을 만들기 위해 위와같이 식을 만들어보았다.
10의자리 숫자에서는 처음에 80이 나오게 되어서, 나누기 10을 해주었다.
이 방법 이외에 다른방법이 있나 생각해 보았을때,
두개의 배열을 만들어서 그 배열에서 값을 뽑아내 곱하는 식으로 해볼까 했다가
다른사람들은 어떻게 만들었나 찾아보고 이 문제는 마무리 지었다.