728x90

📍 바이러스

 

Softeer - 현대자동차그룹 SW인재확보플랫폼

 

softeer.ai

 

 

 

K와 P의 최대값은 10^8, N의 최대값은 10^6이므로 계산하다가 오버플로우가 날 가능성이 농후하다. (사실 무조건인듯)
따라서 계산할 때마다 1000000007을 나눠준다. ✅ 모듈러 연산

long result = K;
int mod = 1000000007;

for(int i=0; i<N; i++){
    result = ((result % mod) * (P % mod)) % mod;
}

 

 

 

✨ 전체코드 ✨

import java.io.*;
import java.util.*;

public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader sc = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(sc.readLine());

        int K = Integer.parseInt(st.nextToken());
        int P = Integer.parseInt(st.nextToken());
        int N = Integer.parseInt(st.nextToken());

        long result = K;
        int mod = 1000000007;
        
        for(int i=0; i<N; i++){
            result = ((result % mod) * (P % mod)) % mod;
        } System.out.println(result);
    }
}

 

 

 

🌀 성능

  • 메모리 : 10.23 MB
  • 시간 : 98 ms