문제풀이/백준

백준 1009. 분산처리(JAVA)

자바썸 2022. 3. 6. 16:09

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 c = 1; 
			
			for(int j = 0 ; j < b ; j++) {
				c = (a * c) % 10;
				if( c == 0) {
					c = 10;
				}
			}
			System.out.println(c);
		}
		sc.close();
	}
}

여기서 키포인트는 a^b를 구하는 것이다. a^b를 구하고 10으로 나눈 뒤 나머지를 통해 답을 구한다.

1. t를 입력받아서 테이스 케이스 개수를 정한다.

2. 첫 번째 for문에 a, b를 입력받고 c는 1로 선언해준다.

3. 두 번째 for문에서 (a * 1) % 10 값을 c에 넣어준 뒤 for문을 b만큼 수행하면서 a^b를 구한다. 

여기서 if 절은 a가 10일 경우만 나올 수가 있기 때문에 if절에 넣어주었다.