1. 程式人生 > >jzoj100027. 【NOIP2017提高A組模擬7.7】表示式

jzoj100027. 【NOIP2017提高A組模擬7.7】表示式

Description

在這裡插入圖片描述

Input

一行兩個整數k,p。

Output

一行一個整數表示答案。

Sample Input

1 3

Sample Output

6

Data Constraint

對於20%的資料:kp<=105k*p<=10^5 對於另外20%的資料 k=1k=1 對於70%的資料:kp<=109k*p<=10^9 對於100%的資料:k,p<=109k,p<=10^9

題解

這題一看就是一道不友好的題。 前%40暴力+打表 %70題解說:發揮人類智慧。 然而並不會做

%100 解法一:簡單自然的找規律,可以發現一些週期或是別的神奇的東東。 解法二:推式子。 我們看到題目要求: i=1kpi2p1modp2\sum_{i=1}^{k*p}i^{2*p-1} mod p^2 放在前面:我們要推一個前置知識。 二項式展開: (a+b)n=i=0nCnianibi(a+b)^n=\sum_{i=0}^{n}C_{n}^{i}*a^{n-i}*b^i

然後我們要證明: i=1p1i2p1p(p+1)/2(modp2)\sum_{i=1}^{p-1}i^{2p-1}\equiv p(p+1)/2(mod p^2)

過程: i=1p1i2p1+i=1p1i2p1p(p+1)(modp2)\sum_{i=1}^{p-1}i^{2p-1}+\sum_{i=1}^{p-1}i^{2p-1}\equiv p(p+1)(modp^2)

i=1p1i2p1+i=1p1(pi)2p1p(p+1)(modp2)\sum_{i=1}^{p-1}i^{2p-1}+\sum_{i=1}^{p-1}{(p-i)}^{2p-1}\equiv p(p+1)(modp^2)

i=1p1i2p1+(pi)2p1p(p+1)(modp2)\sum_{i=1}^{p-1}{i}^{2p-1}+{(p-i)}^{2p-1}\equiv p(p+1)(modp^2)

i=1p1i2p1j=02p1C2p1j(i)2p1jpjp(p+1)(modp2)\sum_{i=1}^{p-1}{i}^{2*p-1}-\sum_{j=0}^{2p-1}C_{2p-1}^j*(-i)^{2p-1-j}*p^{j}\equiv p(p+1)(modp^2)

由於當j>=2時,後面的式子是沒有用的“j=02p1C2p1j(i)2p1jpj\sum_{j=0}^{2p-1}C_{2p-1}^j*(-i)^{2p-1-j}*p^{j}”(模意義下) 所以設後面的式子值為:S 當j=0時S=11i2p1S=-1*1*i^{2p-1} 當j=1時S=(2p1)i2p2pS=(2p-1)*i^{2p-2}*p 得到: i=1p1i2p1i2p1+(2p1)pi2p2p(p+1)(modp2)\sum_{i=1}^{p-1}{i}^{2p-1}-i^{2p-1}+(2p-1)*p*i^{2p-2}\equiv p(p+1)(modp^2)

i=1p1(2p1)pi2p2p(p+1)(modp2)\sum_{i=1}^{p-1}(2p-1)*p*i^{2p-2}\equiv p(p+1)(modp^2)

i=1p1(2p1)i2p2p+1(modp)\sum_{i=1}^{p-1}(2p-1)*i^{2p-2}\equiv p+1(modp)(由於兩邊同時除p,模數也要除p)

因為費馬小定理:ap11(modp)(p)a^{p-1}\equiv 1 (mod p)(p為質數)

所以i2p2=i2(p1)=(i2)p11(modp)i^{2p-2}=i^{2(p-1)}={(i^2)}^{p-1}\equiv 1(modp)

所以原來就變成了: i=1p12p1p+1(modp)\sum_{i=1}^{p-1}2p-1\equiv p+1(modp)

(p1)(2p1)p+1(modp)(p-1)(2p-1)\equiv p+1(mod p)(去掉西格瑪)

2p24p+11(modp)2p^2-4p+1\equiv 1(mod p)(拆出來) 由於是模p意義下,所以變成了:11(modp)1\equiv1(mod p) 得證。 那麼回到題目: i=1kpi2p1modp2\sum_{i=1}^{kp}i^{2p-1} mod p^2

i=1kj=1p[(i1)p+j]2p1modp2\sum_{i=1}^{k}\sum_{j=1}^{p}[(i-1)*p+j]^{2p-1} mod p^2