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使用ctypes模块调用C语言动态库
看介绍python语言时,说它是胶水语言,可以调用其他语言.通过使用ctypes模块就可以调用C语言的动态库.下面先放上官方文档和几个比较好的博文. 1.官方文档:http://python.net/ ...
- 自定义UICollectionLayout
#import "AppDelegate.h"#import "CircleLayout.h"#import "CollectionViewDataS ...
- vlan的三种模式access、trunk、hybrid
untag就是普通的ethernet报文,普通PC机的网卡是可以识别这样的报文进行通讯:tag报文结构的变化是在源mac地址和目的mac地址之后,加上了4bytes的vlan信息,也就是vlan ta ...
- modinfo - 显示当前内核模块信息
总览 modinfo [ options ] <module_file> 描述 modinfo 工具软件用来对内核模块的目标文件 module_file 进行测试并打印输出相关信息. 选项 ...
- js倒计时功能中newData().getTime()在iOS下会报错,显示 nan
最近在做移动端项目 ,有个设置开始时间和结束时间,然后倒计时 这个活动还有几天.在安卓上能正确转换时间,但在iOS上不能显示,为NaN-NaN1-NaN Invalid Date, 就好比new D ...
- Python---进阶---文件操作---获取文件夹下所有文件的数量和大小
一.####编写一个程序,统计当前目录下每个文件类型的文件数 ####思路: - 打开当前的文件夹 - 获取到当前文件夹下面所有的文件 - 处理我们当前的文件夹下面可能有文件夹的情况(也打印出来) - ...
- linux-LVM磁盘扩容
查看磁盘 [ops@stock_kline_database ~]$ sudo fdisk -l 磁盘 /dev/sda: 字节, 个扇区 Units = 扇区 of * = bytes 扇区大小(逻 ...
- 【C】题解 (五校联考3day2)
分析 这道题看上去很恶心,实际上只用记录四坨东西就能打DP了:y坐标最小的向上射的点.y坐标最大的向下射的点.y坐标最大和最小的向右射的点,转移显然.注意,如果该状态的值为零就可以略过,否则会超时. ...
- CSS3——制作图片翻页的小动画
觉得还挺有意思的嘻嘻~ 这里有一个问题要注意一下,图片反转过程中可能会遇到一种如下所示的跳变bug: 这玩意一出来吓我一大跳,显然这种用户体验是很不好的,解决方法: 在.pic, .info{...} ...
- logback系列二:logback在项目中的应用
1.输出http日志 2.输出dubbo日志 3.输出interfacer日志 4.输出到access,remote,app等目录中