网站制作 电子商城,商城县,郑州市公共资源交易中心,广州网站设计公司新闻题解#xff1a; #xff08;吐槽#xff1a;网上题解那个不严谨猜测真是没谁了……关键是还猜得辣么准……#xff09; 直接化简到求和那一段#xff1a; $f_{d}(n)\sum_{t|n}\mu(t)t^{d}\sum_{i1}^{\frac{n}{t}}i^{d}$ $设S_{d}(T)\sum_{i1}^{T}i^{d}$ 那这个是什么呢 吐槽网上题解那个不严谨猜测真是没谁了……关键是还猜得辣么准…… 直接化简到求和那一段 $f_{d}(n)\sum_{t|n}\mu(t)t^{d}\sum_{i1}^{\frac{n}{t}}i^{d}$ $设S_{d}(T)\sum_{i1}^{T}i^{d}$ 那这个是什么呢伯努利数我会说我百度找到的吗…… 百度 递推公式 $s_{p}(T)\sum_{i1}^{p1}\frac{(-1)^{p1-i}C_{p1}^{i}B_{p1-i}}{p1}n^{i}$(这个是百度那个公式化过来的) 然后$n^{i}$前面那一堆玩意就是网上题解的$a_{i}$。 接下来的化简我就不解释了……http://www.cnblogs.com/jianglangcaijin/p/4033399.html 然后我们只要求出C和B这题就没了。貌似可以把d的范围再扩10倍233 代码 1 #includecstdio2 using namespace std;3 typedef long long ll;4 const ll mod1e97;5 const int N10000;6 inline ll read(){7 ll s0,k1;char chgetchar();8 while(ch0|ch9) ch-?k-1:0,chgetchar();9 while(ch47ch9) ss*10(ch^48),chgetchar();
10 return s*k;
11 }
12 inline ll powmod(ll a,ll b){
13 ll ans1;
14 if(b0)
15 return powmod(powmod(a,mod-2),-b);
16 a%mod;
17 while(b){
18 if(b1) ansans*a%mod;
19 b1;aa*a%mod;
20 }return ans;
21 }
22 ll w,d;
23 ll p[N],pk[N];
24 ll tot1;
25 inline ll calc(int n){
26 ll tpowmod(tot,n);
27 for(int i1;iw;i){
28 tt*(1ll-powmod(p[i],d-n))%mod;
29 }
30 if(t0) tmod;
31 return t;
32 }
33 ll c[105][105],b[105];
34 int main(){
35 dread(),wread();
36 ll nw;
37 for(int i1;in;i){
38 p[i]read(),pk[i]read();
39 tottot*powmod(p[i],pk[i])%mod;
40 }
41 c[0][0]1;
42 for(int i1;i101;i){
43 c[i][0]1;
44 for(int j1;ji;j)
45 c[i][j](c[i-1][j]c[i-1][j-1])%mod;
46 }
47 b[0]1;
48 for(int i1;i101;i){
49 for(int j0;ji;j)
50 b[i](b[i]c[i1][j]*b[j])%mod;
51 b[i]b[i]*(-powmod(i1,mod-2))%modmod;
52 b[i]%mod;
53 }
54 ll ans0;
55 ll invpowmod(d1,mod-2);
56 for(int i1;id1;i){
57 ll temp((d1-i1)?-1:1)*c[d1][i]*b[d1-i]%mod*inv%mod;
58 if(temp0)
59 continue;
60 temptemp*calc(i)%mod;
61 anstemp;
62 ans%mod;
63 }
64 printf(%lld\n,(ans%modmod)%mod);
65 }
66 /*
67 3 2
68 2 1
69 5 1
70 */ 转载于:https://www.cnblogs.com/Troywar/p/7599145.html