タイトル
質問の意味:列のx個の定義を与えます:
- $ T_0 = A $
- $のT_1 = bは$
- $ T_N = T_ {N-2} \ T_ {N-1} $ bigoplus
$ N探索$のエントリ($ 0 \ leqslant Aは、B、C \ leqslant 10 ^ {18} $)
分析
$ N $は、一定の時間複雑でなければならないので、大きいです。
法律を見つけるためにテーブルをヒット、第3節で循環しています。
または直接派生し、\のbigoplusのB = C、\ bの\ bigoplus C = A、\ C \ bigoplus A = Bの$ $
#include <ビット/ STDC ++ H> 使用して 名前空間STDを、 typedefの長い 長いLL。 LL、B、N。 INT メイン() { scanf関数(" %LLD%LLD%LLD "、&、&B&N) LLのC = A ^ B。 ANS LL; もし(N%3 == 0)ANS = 。 そう であれば(N%3 == 1)ANS = B。 他の ANS = C; printf(" %LLDする\ n " 、ANS)。 リターン 0 ; }