공부하기/백준

[Java] 백준 풀기 11772 - POT

XEV 2023. 3. 29. 23:35

자바 백준 11772번

브론즈 3

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

 

11772번: POT

The first line of input contains the integer \(N\) (1 ≤ \(N\) ≤ 10), the number of the addends from the task. Each of the following \(N\) lines contains the integer \(P_i\) (10 ≤ \(P_i\) ≤ 9999, \(i\) = 1 ... \(N\)) from the task.

www.acmicpc.net

 

 

 

 

 

문제 보기

분류: 수학, 구현, 사칙연산

 

 

 

 

 

문제 풀기

주어진 숫자들의 맨 뒷자리 숫자를 지수로 올려 밑과 계산을 하고 그 계산된 모든 숫자들을 합해야한다.

이를 위해 맨 뒷자리를 뺀 나머지로 숫자로 만들기 위해서 10 으로 나눈 몫을 밑으로 만든다.

그리고 맨 뒷자리 수만 빼기 위해서 10 으로 나눈 나머지를 지수로 정한다.

거듭제곱 계산을 위해 Math.pow() 함수를 사용하여 밑과 지수를 대입한다.

최종적으로 각 숫자들의 밑, 지수 계산 결과는 result 에 누적하여 더한다.

 

 

 

 

 

코드 보기

import java.util.Scanner;

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

        Scanner sc = new Scanner(System.in);
        
        int nums = sc.nextInt();
        int tempNum = 0;
        int result = 0;
        
        for (int i = 0; i < nums; i++) {
            tempNum = sc.nextInt();
            result += Math.pow((tempNum / 10), (tempNum % 10));
        }
        
        System.out.print(result);
    }
}