整数べき乗

3625 ワード

整数べき乗(マルチインスタンステスト)


Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 1073  Solved: 610

Description


A^Bの最後の3桁の表す整数を求めます(1<=A、B<=1000)

Input


n個の試験例、各例は2個の正の整数A,Bを与える

Output


出力A^Bの最後の3ビット(先頭0なし)

Sample Input


2
2 3
12 6

Sample Output


8
984
 
 

Code:

 1 import java.util.Scanner;

 2 import java.math.BigInteger;

 3 public class Main{

 4 

 5     public static void main(String[] args) {

 6         Scanner input=new Scanner(System.in);

 7         int n=input.nextInt();

 8         while(n-->=0){

 9             BigInteger A=input.nextBigInteger();

10             int B=input.nextInt();

11             A=A.pow(B);              // A B A;

12             int len=A.toString().length(); // A String .

13             if(len<=3)

14                 System.out.println(A.intValue());  // A 3  intValue() A int .

15             else{

16                 A=new BigInteger(A.toString().substring(len-3,len));  // A 

17                 System.out.println(A.intValue());      // intValue() A int .

18             }

19         }

20     }

21 }

 
 http://www.cnblogs.com/HRuinger/