nssl1257-A【数论】
正题
题目大意
对于n个数组成的序列,求排好序需要最少交换次数的期望次数。
解题思路
我们可以先求出需要次数总和在乘上n!n!n!的逆元
先打一个表,不难发现
f(n)=f(n−1)∗n+(n−1)(n−1)!f(n)=f(n-1)*n+(n-1)(n-1)!f(n)=f(n−1)∗n+(n−1)(n−1)!
然后我们在考虑插入,对于前面一个序列,我们可以插入一个比前面的数都大的数进去,之后我们会发现只有插在最后面才不会增加交换次数,其他都会增加一次交换次数,式子显然正确。
之后fff离线预处理,逆元在线处理
时间复杂度:O(N+Tlogp)O(N+T\ \ log\ p)O(N+T log p)
code
#include<cstdio>
#include<cctype>
#define p 998244353
#define N 10000000
#define ll long long
using namespace std;
ll t,f[N+10],k,n,jx[N+10];
ll read() {int x=0,f=1; char c=getchar();while(!isdigit(c)) {if(c=='-')f=-f;c=getchar();}while(isdigit(c)) x=(x<<1)+(x<<3)+c-48,c=getchar();return x*f;
}
void write(ll x){if (x>9) write(x/10); putchar(x%10+48); return;
}
ll power(ll x,ll b)//费马小求逆元
{ll ans=1;while(b){if(b&1) ans=ans*x%p;x=x*x%p;b>>=1;}return ans;
}
int main()
{scanf("%lld",&t);f[2]=1;jx[2]=2;for(ll i=3;i<=N;i++)//预处理{jx[i]=jx[i-1]*i%p;//阶乘预处理f[i]=(f[i-1]*i%p+(jx[i]-jx[i-1]+p)%p)%p;}for(ll i=1;i<=t;i++){n=read();write(power(jx[n],p-2)*f[n]%p);putchar('\n');}
}
nssl1257-A【数论】相关推荐
- 数论(一)——素数,GCD,LCM
这是一个数论系列:) 一.素数 ×费马小定理 Theorem: 设 p 是一个素数,a 是一个整数且不是 p 的倍数,那么 很遗憾,费马小定理的逆定理是不成立的.对 a = 2,满足的非素数 n 是存 ...
- 【数论总结】-----励志写好一篇数论总结↖(^ω^)↗//正在施工...未完工
近期学了学数论,来写一波总结吧. (1)排列组合,比较基础的东西了吧.//只写个概念吧,(逃: 概念:就是从n个不同元素中,任取m(m≤n)个元素并成一组,叫做从n个不同元素中取出m个元素的一个组合: ...
- 解题报告(十八)数论题目泛做(Codeforces 难度:2000 ~ 3000 + )
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...
- 《算法竞赛中的初等数论》(五)正文 0x50筛法(ACM / OI / MO)(十五万字符数论书)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 写在最前面:本文部分内容来自网上各大博客或是各类图书,由我个人整理,增加些许见解,仅做学习交流使用,无 ...
- 《算法竞赛中的初等数论》(四)正文 0x40反演(ACM / OI / MO)(十五万字符数论书)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 写在最前面:本文部分内容来自网上各大博客或是各类图书,由我个人整理,增加些许见解,仅做学习交流使用,无 ...
- P6271 [湖北省队互测2014]一个人的数论(莫比乌斯反演,拉格朗日插值)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 P6271 [湖北省队互测2014]一个人的数论(莫比乌斯反演,拉格朗日插值) Problem Sol ...
- 《算法竞赛中的初等数论》(三)正文 0x30 积性函数(ACM / OI / MO)(十五万字符数论书)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 写在最前面:本文部分内容来自网上各大博客或是各类图书,由我个人整理,增加些许见解,仅做学习交流使用,无 ...
- 《算法竞赛中的初等数论》(二)正文 0x20同余(ACM / OI / MO)(十五万字符数论书)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 写在最前面:本文部分内容来自网上各大博客或是各类图书,由我个人整理,增加些许见解,仅做学习交流使用,无 ...
- 解题报告(一)C、(牛客练习赛41 F)简单数学题(数论 + FWT)(3.5)
繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量题解和代码,题目难度不一定按照题号排序,我会在每道题后面加上题目难度指数(1∼51 \sim 51∼5),以模板题难度 11 ...
- CF1471 D - Strange Definition(思维,分类讨论,lcm,gcd的性质,数论)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Codeforces Round #694 (Div. 2) D 很好的一道数论思维题 D - Str ...
最新文章
- 水稻微生物组时间序列分析2a-相关分析
- nagios学习手札
- maven开发mybatis 让*.xml 拷贝到classes目录下
- Python网络编程—(TCP、UDP区别)
- html5响应式网站优势,响应式网站优势有哪些 真的利于排名优化么
- SQL Server安装问题程序被挂起的错误解决办法
- js高级(类和对象)
- mysql 数据库中根据当前系统时间,取前后几秒 几分钟 几小时 几天
- Maven 梳理 - Maven中的dependencyManagement 意义
- Excel快速排查重复数据的几种方法?
- Fruits 360(水果数据集)
- npm 安装中的 i、-g、--save、--save-dev、-D、-S的区别
- 【rpm】源码包制作rpm包|修改rpm、重新制作rpm包
- 鸿蒙3.0 APP混合开发闪退问题笔记
- ecmall购物获积分功能 积分抵扣设置 积分购物
- shell 变量五 字符串掐头去尾
- java龙世界禁忌之恋灵魂大殿_《龙世界-禁忌之恋》完美图文攻略
- python编译型语言和解释型语言
- idea使用Git将分支代码合并到主干或其他分支
- VOWIFI--相关的协议文档
热门文章
- 计算机Word应用程序,Word2007目录设置_计算机软件和应用程序_IT /计算机_信息
- c语言格式字符If,C语言所有语句格式 C语言中的的if语句共有多少种格式?
- redis 清空缓存_「镜头回放」简直了!spring中清除redis缓存导致应用挂死
- python 防止转义_python字符串前加r、f、u、l 的区别
- [C++11]独占的智能指针unique_ptr的初始化和使用
- Θ(n)反转单链表(算法导论第三版第十章10.2-7)
- maven知识提炼总结
- 蓝桥杯2014届试题9题 小朋友排队(树状数组+类逆序对)
- Buying Shovels CodeForces - 1360D(数论+找因子)
- 线性代数---向量问题的求解方法