AT_abc317_f [ABC317F] Nim
Description
[problemUrl]: https://atcoder.jp/contests/abc317/tasks/abc317_f
整数 $ N,A_1,A_2,A_3 $ が与えられます。以下の $ 3 $ つの条件を全て満たすような正整数の組 $ (X_1,X_2,X_3) $ の個数を $ 998244353 $ で割ったあまりを求めてください。
- 全ての $ i $ で $ 1\leq\ X_i\ \leq\ N $ である。
- 全ての $ i $ で $ X_i $ は $ A_i $ の倍数である。
- $ (X_1\ \oplus\ X_2)\ \oplus\ X_3\ =\ 0 $ である。ただし、$ \oplus $ はビット単位の xor を表す。
ビット単位 xor とは非負整数 $ A,\ B $ のビット単位 xor 、$ A\ \oplus\ B $ は、以下のように定義されます。 - $ A\ \oplus\ B $ を二進表記した際の $ 2^k $ ($ k\ \geq\ 0 $) の位の数は、$ A,\ B $ を二進表記した際の $ 2^k $ の位の数のうち一方のみが $ 1 $ であれば $ 1 $、そうでなければ $ 0 $ である。
例えば、$ 3\ \oplus\ 5\ =\ 6 $ となります (二進表記すると: $ 011\ \oplus\ 101\ =\ 110 $)。
Input Format
N/A
Output Format
N/A
Explanation/Hint
### 制約
- $ 1\ \leq\ N\ \leq\ 10^{18} $
- $ 1\ \leq\ A_i\ \leq\ 10 $
- 入力は全て整数である
### Sample Explanation 1
$ (X_1,X_2,X_3) $ が $ (6,3,5),(6,12,10),(12,6,10),(12,9,5) $ のときの $ 4 $ 通りが条件を満たします。