http://e-tutor.itsa.org.tw/e-Tutor/mod/programming/view.php?a=15733
這題要注意可能會溢位必須要用BigInteger,美個數相乘直到餘一為止
import java.math.BigInteger;
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scn = new Scanner(System.in);
int n=scn.nextInt();
while(n--!=0){
int num=scn.nextInt(),arr[]=new int [num],j=0;
BigInteger tot=new BigInteger("1"),div=scn.nextBigInteger();
for(int i=0;i<num;i++)
arr[i]=scn.nextInt();
for(j=0;j<num;j++){
tot=tot.multiply(new BigInteger(Integer.toString(arr[j]%Integer.parseInt(div.toString()))));
if(tot.mod(div).equals(new BigInteger("1"))){
System.out.println(j+1);
break;
}
}
if(j==num)
System.out.println(-1);
}
}
/*
題目:2016 闖關組 [Problem B1] Product and remainder
作者:1010
時間:西元 2016 年 8 月 */
}