其他分享
首页 > 其他分享> > CF1188B.Count Pairsl(数学)

CF1188B.Count Pairsl(数学)

作者:互联网

题意:

给出一个长度为n的数组a,两个整数p和k。

询问有多少数对\((x,y)(1 \leq x < y \leq n)\)使得\((a_x^2+a_y^2)(a_x+a_y)\)对p取模的结果为k。

保证p是质数。

题解:

\((a_x^2+a_y^2)(a_x+a_y)\%p=k\)

\((a_x^2+a_y^2)(a_x+a_y)(a_x-a_y)\%p=(a_x-a_y)k\%p\)

\((a_x^2+a_y^2)(a_x^2-a_y^2)\%p=(a_x-a_y)k\%p\)

\((a_x^4-a_y^4)\%p=(a_x-a_y)k\%p\)

\((a_x^4-ka_x)\%p=(a_y^4-ka_y)\%p\)

对每个a_x统计答案即可。

标签:Count,取模,ka,题意,题解,质数,leq,CF1188B,Pairsl
来源: https://www.cnblogs.com/zhanglichen/p/14618409.html