본문 바로가기

백준

[백준] 1009번 : 분산처리 [Java]

https://www.acmicpc.net/problem/1009

 

1009번: 분산처리

입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트 케이스에 대해 정수 a와 b가 주어진다. (1 ≤ a < 100, 1 ≤ b < 1,000,000)

www.acmicpc.net

 


 

 

● 문제

[백준] 1009번

 

 

 

 

● 접근 방법

문제를 간단하게 풀어쓰면 a 를 b번 제곱하라는 문제이다.

하지만 a에 b를 계속 곱하기만 하면 숫자가 너무 커지니, 1의 자리수만 뽑아 수를 줄인다.

 

 

 

 

● 문제 풀이

import java.util.Scanner;

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

		// 입력
		Scanner sc = new Scanner(System.in);
		int t = sc.nextInt();

		
		//풀이
		for (int i = 0; i < t; i++) {
			int a = sc.nextInt();
			int b = sc.nextInt();

			int answer = 1;  // 0에 a를 곱하면 0이므로 1로 초기화.
			
			for(int j = 0; j < b; j++)
				answer = (answer * a) % 10; // 1의 자리수만 추출
			
			if(answer == 0) answer = 10;
			
			System.out.println(answer);
		}
	}
}