0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AtCoder Tips

Last updated at Posted at 2025-11-11

競プロ典型 90 問

055 - Select 5(★2)

以下を調べればいいが、5つの掛け算でオーバーフローが起きる。

(A[i] * A[j] * A[k] * A[l] * A[m]) % P == Q

なので、掛け算を細分化し2つの掛け算を行うたびに$ $%$P $を行いオーバーフローを防ぐ。

$ A_i \cdot A_j \equiv (A_i \cdot A_j) \mathbin{\%} P \pmod{P} $
$ \Rightarrow A_i \cdot A_j \cdot A_k \cdot A_l \cdot A_m \equiv ((((A_i \cdot A_j) \mathbin{\%} P \cdot A_k) \mathbin{\%} P \cdot A_l) \mathbin{\%} P \cdot A_m) \mathbin{\%} P \pmod{P} $

従って、以下を調べればいい。

(A[i] * A[j] % P * A[k] % P * A[l] % P * A[m] % P) % P == Q

$ B = A_i \cdot A_j \mathbin{\%} P \cdot A_k \mathbin{\%} P \cdot A_l \mathbin{\%} P \cdot A_m$ と置いて、これを書き換えると
$ (B \mathbin{\%} P) \mathbin{\%} P == Q $
$ \Rightarrow B \mathbin{\%} P == Q \qquad \because B \mathbin{\%} P \equiv B \pmod{P} $

つまり、以下でもいい

A[i] * A[j] % P * A[k] % P * A[l] % P * A[m] % P == Q

ABC

108

C - Triangular Relationship

$ a+b \equiv b+c \equiv c+a \pmod{K} $
$ \Rightarrow a \equiv b \equiv c \pmod{K} \qquad \because a+b \equiv b+c \Rightarrow a \equiv c \pmod{K} \quad \text{他同様} $

$ a+b \equiv b+c \equiv c+a \equiv 0 \pmod{K} $
$ \Rightarrow 2a \equiv 2b \equiv 2c \equiv 0 \pmod{K} \qquad \because a \equiv b \equiv c \pmod{K}$

Kが奇数の場合

$ 2a \equiv 2b \equiv 2c \equiv 0 \pmod{K} $
$ \Rightarrow a \equiv b \equiv c \equiv 0 \pmod{K} \qquad \because \gcd(2,K)=1 $

例としてaを考えると、
$a = K, 2K, 3K \cdots \qquad \because a \equiv 0 \pmod{K}$
初項K, 項数n, 公差Kの等差数列の一般項は、$ An = K + (n-1)K = nK $
$An \leq N$となるnの最大値は$n=\lfloor \frac{N}{K} \rfloor$

従ってN以下の正の整数で、Kで割り切れる数の個数は、$\lfloor \frac{N}{K} \rfloor$
b,cも同様に考えると、a,b,cを$\lfloor \frac{N}{K} \rfloor$個の中から選べばよく、その組み合わせは$\lfloor \frac{N}{K} \rfloor^3 $

よって、Kが奇数の場合は、$\lfloor \frac{N}{K} \rfloor^3$

Kが偶数の場合

例としてaを考えると、
$ 2a = K, 2K, 3K, 4K, 5K, \cdots \qquad \because 2a \equiv 0 \pmod{K} $
$ \Rightarrow a = \frac{K}{2}, K, K+\frac{K}{2}, 2K, 2K+\frac{K}{2}, \cdots $
$ \therefore a \equiv 0,\frac{K}{2} \pmod{K} $
同様にして、$ a \equiv b \equiv c \equiv 0,\frac{K}{2} \pmod{K} $

$ a \equiv b \equiv c \equiv 0\pmod{K} $のとき、$\lfloor \frac{N}{K} \rfloor^3 \qquad \because \text{Kが奇数の場合参照}$

$ a \equiv b \equiv c \equiv \frac{K}{2} \pmod{K} $のとき、
例としてaを考えると、
$ a = \frac{K}{2}, \frac{K}{2}+K, \frac{K}{2}+2K \cdots \qquad \because a \equiv \frac{K}{2} \pmod{K}$
初項$\frac{K}{2}$,項数n,公差Kの等差数列の一般項は、$An = \frac{K}{2} + (n-1)K = nK - \frac{K}{2}$
$An \leq N$となるnの最大値は$ n = \lfloor \frac{N+\frac{K}{2}}{K} \rfloor $
従ってN以下の正の整数で、Kで割って$\frac{K}{2}$余る数の個数は$\lfloor \frac{N+\frac{K}{2}}{K} \rfloor$
b,cも同様に考えると、a,b,cを$\lfloor \frac{N+\frac{K}{2}}{K} \rfloor$個の中から選べばよく、その組み合わせは$\lfloor \frac{N+\frac{K}{2}}{K} \rfloor^3$

よって、Kが偶数の場合は、$\lfloor \frac{N}{K} \rfloor^3 + \lfloor \frac{N+\frac{K}{2}}{K} \rfloor^3$

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?