곱셈
2588번: 곱셈
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int m = in.nextInt();
System.out.println(n * (m % 10));
System.out.println(n * (m % 100 /10));
System.out.println(n * (m / 100));
System.out.println(n * m);
in.close();
}
}
- Scanner와 System.out.print() 는 자바를 배울 때 제일 먼저 배우고 가장 흔하게 사용하는 방법이다 . 하지만 둘 다 속도 면에서 매우 느린 편에 속한다 리소스를 많이 사용하여 성능 부하를 초래하기 때문이다.
- Scanner의 경우 최적화 관점에서 명시적으로 close ()를 선언하여 닫아주는 것이 좋다
- 하지만, close () 를 통해 닫게 된다면 프로그램 상에서 다시는 Scanner를 사용할 수 없으니 유의해야 한다.
- 순서대로 m의 일의자리,십의 자리,백의 자리를 구해야 하는게 문제의 핵심이다.
- 순서대로 m의 일의 자리는 m을 10으로 나눈 나머지로 구할 수 있다 십의 자리는 100으로 나눈 나머지를 다시 10으로 나눈 ‘몫’ 이다 백의 자리는 m을 100으로 나눈 몫으로 구할 수 있다