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:/ ...
随机推荐
- 小白学Python(20)—— Turtle 海龟绘图
Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行 ...
- MinGW的安装
我在MinGW官网下载到的版本是mingw-w64-install.exe,不过这差不多是一年以前的事了…… 安装路径:D:\Program Files (x86)\mingw-w64\i686- ...
- intellij idea 的快捷键方法
1.Ctrl+N按名字搜索类 相当于eclipse的ctrl+shift+R,输入类名可以定位到这个类文件,就像idea在其它的搜索部分的表现一样,搜索类名也能对你所要搜索的内容多个部分进行匹配,而且 ...
- 【玩转Eclipse】——eclipse实现代码块折叠-类似于VS中的#region……#endregion
[玩转Eclipse]——eclipse实现代码块折叠-类似于VS中的#region……#endregion http://www.cnblogs.com/Micheal-G/articles/507 ...
- AlertDialog用法。
AlertDialog 可以在当前的界面弹出一个对话框,这个对话框是置顶于所有界面元素之上的,能够屏蔽掉其他控件的交互能力,因此一般 AlertDialog 都是用于提示一些非常重要的内容或者警告信息 ...
- Linux之文件属性、权限
Linux中的3种身份:1. owner(文件所有者) 2. group(用户组) 3. others(其他) Linux中的3中权限:1. r(可读) 2. w(可写) 3. x(可执行) * 所有 ...
- 长沙理工大学第十二届ACM大赛-重现赛 B 日历中的数字 (实现)
链接:https://ac.nowcoder.com/acm/contest/1/B来源:牛客网 全屏查看题目 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他 ...
- 设置mysql数据表列自动递增以及数据行插入操作
创建mysql数据表,设置id列递增.主键create table running_log ( id int primary key auto_increment, routename varchar ...
- python request.args 解析
requst.args 获得的是 列表类型原始 aa=ff&&bb=gg 通过request.args 分解为 ImmutableMultiDict([('page', u'10')] ...
- Flask【第7篇】:Flask中的wtforms使用
flask中的wtforms使用 一.简单介绍flask中的wtforms WTForms是一个支持多个web框架的form组件,主要用于对用户请求数据进行验证. 安装: pip3 install w ...