2012-05-17 AOJ 2353:Four Arithmetic Operations AOJ Math ソース http://judge.u-aizu.ac.jp/onlinejudge/review.jsp?rid=404152 方針 制約が大きい…JavaならBigIntegerを使えばよいかもしれない。 2^32より大きいmodを使うとlong longでもoverflowする可能性があるので 10^5((10^5)^2 >= 10^9.6≒2^32)程度のmodを素数を2個使ってmod取って計算した後で中国剰余定理を使って元に戻せばよい。 (uwiさん指摘ありがとうございました。)あと気をつけることは 減算: 負のmodにならないように t1 = (t1 + m1 - y%m1)%m1; とする 除算: 逆元を掛けるというところだと思う。