p5437 【XR-2】约定
分析
https://www.cnblogs.com/cjyyb/p/11111404.html
代码
#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N = 1e7;
const int mod = ;
int fac[N+],inv[N+],pre[N+],y[N+],K,ik[N+],Ans,sur[N+];
inline int pw(int x,int p){
int res=;
while(p){
if(p&)res=res*x%mod;
x=x*x%mod;p>>=;
}
return res;
}
inline int work(){
int i,j,k,res=,wh=((K+)&)?mod-:;
for(i=;i<=K;i++,wh=mod-wh){
int t=y[i];t=t*wh%mod;
t=t*inv[i-]%mod*inv[K-i]%mod;
t=t*pre[i-]%mod*sur[i+]%mod;
res=(res+t+mod)%mod;
}
return res;
}
signed main(){
int i,j,k,n;
scanf("%lld%lld",&n,&K);
K+=;fac[]=pre[]=sur[K+]=;
for(i=;i<=K;i++)fac[i]=fac[i-]*i%mod;
inv[K]=pw(fac[K],mod-);
for(i=K-;i>=;i--)inv[i]=inv[i+]*(i+)%mod;
for(i=;i<=K;i++)ik[i]=pw(i,K-);
for(i=;i<=K;i++)pre[i]=pre[i-]*(n-i+mod)%mod;
for(i=K;i>=;i--)sur[i]=sur[i+]*(n-i+mod)%mod;
for(i=;i<=K;i++)y[i]=(y[i-]+(i-)*ik[i]%mod)%mod;
Ans=(Ans+work())%mod;
for(i=;i<=K;i++)y[i]=(y[i-]+ik[]*ik[i]%mod)%mod;
Ans=(Ans+mod-work())%mod;
for(i=;i<=K;i++)y[i]=(y[i-]+(n+n-i+)%mod*ik[i]%mod)%mod;
Ans=(Ans+mod-work())%mod;
for(i=;i<=K;i++)pre[i]=pre[i-]*(n+n-i+mod)%mod;
for(i=K;i>=;i--)sur[i]=sur[i+]*(n+n-i+mod)%mod;
Ans=(Ans+work())%mod;
Ans=Ans*pw(n,mod-)%mod;printf("%lld\n",(Ans+mod)%mod);
return ;
}
p5437 【XR-2】约定的更多相关文章
- 洛谷P5437/5442 约定(概率期望,拉格朗日插值,自然数幂)
题目大意:$n$ 个点的完全图,点 $i$ 和点 $j$ 的边权为 $(i+j)^k$.随机一个生成树,问这个生成树边权和的期望对 $998244353$ 取模的值. 对于P5437:$1\le n\ ...
- [译]C#编码约定
原文:https://msdn.microsoft.com/en-us/library/ff926074.aspx 编码约定的目的是: 创建统一格式的代码,让读者的注意力更集中在内容上面,而不是结构 ...
- Entity Framework Code First属性映射约定
Entity Framework Code First与数据表之间的映射方式有两种实现:Data Annotation和Fluent API.本文中采用创建Product类为例来说明tity Fram ...
- Entity Framework Code First关系映射约定
本篇随笔目录: 1.外键列名默认约定 2.一对多关系 3.一对一关系 4.多对多关系 5.一对多自反关系 6.多对多自反关系 在关系数据库中,不同表之间往往不是全部都单独存在,而是相互存在关联的.两个 ...
- 3.Code-First 约定(EF Code-First系列)
前面,我们已经了解了Code-First利用领域类,怎么为我们创建数据库的简单示例.现在我们来学习一下Code-First约定吧. 什么是约定 约定说白了,就是基于一套规矩办事,这里就是基于你定义好的 ...
- UDS(ISO14229-2006) 汉译(No.5 公共约定)
ISO 14229遵循OSI Service Conventions(ISO 10731)(OSI服务公约)所述,并应用于诊断服务.这些约定指定相互作用与服务消费者和服务提供者.通过服务原语,信息数据 ...
- Startup配置类 居然又是约定
Microsoft.Owin.Host.SystemWeb 这个dll可以让OWin接管IIS的请求,虽然同样是托管在IIS,但是所有的请求都会被OWin来处理.在OWin的4层结构中(Applica ...
- XD, XR, DR 股票
股权登记日与除权除息日 所以,如果投资者想得到一家上市公司的分红.配股权,就必须弄清这家公司的股权登记日在哪一天,否则就会失去分红.配股的机会. 股权登记日后的第一天就是除权日或除息日,这一天或以后购 ...
- 单元测试 逃不开的Done 与约定
关注单元测试有一段时间了,也做了些尝试然后就停了下来,寻找框架.方法.各种尝试 看得多,尝试的少, 关于框架分为两类,1是自动化测试工具类,1是js单元测试框架 关于自动化测试工具我尝试了http:/ ...
随机推荐
- Larkin’s NOI
Larkin’s NOI Problem Description Larkin has been to Yantai to take part in NOI 2010!众所周知(do you know ...
- jquery导航栏高亮(二级菜单点击一级保持高亮)
<script type="text/javascript"> var urlstr = location.href; var urlstatus=false; $(& ...
- getopt_long函数解析命令行参数
转载:http://blog.csdn.net/hcx25909/article/details/7388750 每一天你都在使用大量的命令行程序,是不是感觉那些命令行参数用起来比较方便,他们都是使用 ...
- python 序列解包(解压缩)
序列解包(解压缩) 所学的解压缩 如果我们给出一个列表,我们需要一次性取出多个值,我们是不是可以用下面的方式实现呢? name_list = ['nick', 'egon', 'jason'] x = ...
- 一张图说明移动前端开发与web前端开发的区别
- Android真机测试时无法连接服务器
之前服务器的通信一直是在模拟机上实现的,今天用在真机上却不成功.百度之后发现是安卓9以后禁止使用HTTP直接访问服务器.记录一下以后使用. 参考博文:https://blog.csdn.net/don ...
- FTP连接不上的解决方法
1.注意内网IP和外网IP 2.检查ftp服务是否启动 (面板首页即可看到) 3.检查防火墙20端口 ftp 21端口及被动端口39000 - 40000是否放行 (如是腾讯云/阿里云等还需检查安全组 ...
- ECMAScript 6 学习笔记(二)
ECMAScript 6 let和const命令 let命令 基本用法 ES6新增了let命令,用来声明变量.它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效. { let a ...
- 内存分析工具MAT(Memory Analyzer Tool)从安装到使用
一.安装 首先,你得有一个Eclipse(因为MAT是Eclipse的插件) 然后,你要在Eclipse上安装MAT,步骤如下: 1.点击Help,Install New Soft,就出现了以下Ins ...
- 【玩转Eclipse】——eclipse实现代码块折叠-类似于VS中的#region……#endregion
[玩转Eclipse]——eclipse实现代码块折叠-类似于VS中的#region……#endregion http://www.cnblogs.com/Micheal-G/articles/507 ...