首页 > 代码库 > UVa 10489 - Boxes of Chocolates

UVa 10489 - Boxes of Chocolates

题目:有B个盒子,没个盒子中有a1个小盒子,每个小盒子里面还有a2个更小的盒子,...;

            最小的盒子里有ak个巧克力,问把巧克力分给N个人后的余数。

分析:模拟,大整数乘法,余数运算。直接利用Java的大数类求解。

说明:(⊙_⊙)类名要是Main。

import java.util.Scanner;  
import java.math.BigInteger;  
  
class Main
{  
    public static void main(String[] args) {  
        Scanner cin = new Scanner(System.in);  
        int T = cin.nextInt();  
        int N, B, K;
        
        while (T -- > 0) {  
            N = cin.nextInt();  
            B = cin.nextInt();  
            BigInteger ans = BigInteger.valueOf(0);  
            while (B -- > 0) {  
                K = cin.nextInt();  
                BigInteger tmp = BigInteger.valueOf(1);  
                while (K -- > 0) {
                    tmp = tmp.multiply(BigInteger.valueOf(cin.nextInt()));  
                }  
                ans = ans.add(tmp);  
            }  
            
            System.out.println((ans.remainder(BigInteger.valueOf(N))).toString());  
        } 
    }  
}


UVa 10489 - Boxes of Chocolates