LOJ 6019
挺没意思的题
全都读进去算一个每个阶乘的系数
然后算一遍每个数的系数
最后在质数处算一下答案
- #include<bits/stdc++.h>
- using namespace std;
- #define rep(i,a,b) for(int i=(a),i##_end=(b);i<=i##_end;++i)
- #define For(i,a,b) for(int i=(a),i##_end=(b);i<i##_end;++i)
- #define per(i,a,b) for(int i=(b),i##_st=(a);i>=i##_st;--i)
- #define fi first
- #define se second
- #define pb push_back
- #define mp make_pair
- #define dbg(x) cerr<<#x" = "<<x<<endl
- #define debug(...) fprintf(stderr, __VA_ARGS__)
- #define Es(x,i) for(Edge*i=G[x];i;i=i->nxt)
- typedef long long ll;
- typedef pair<int,int> pii;
- const int inf=~0u>>1,MOD=1e9+7;
- char *TT,*mo,but[(1<<15)+2];
- #define getchar() ((TT==mo&&(mo=((TT=but)+fread(but,1,1<<15,stdin)),TT==mo))?-1:*TT++)
- inline int rd() {
- int x,c,f=1;while(!isdigit(c=getchar()))f=c!='-';x=c-'0';
- while(isdigit(c=getchar()))x=x*10+c-'0';return f?x:-x;
- }
- const int N=1e6+1;
- int n,P,mod;
- int mn[N],p[N],tot;
- inline void Init(){
- For(i,2,N){
- if(!mn[i])mn[i]=i,p[++tot]=i;
- for(int j=1,k;j<=tot&&p[j]<=mn[i]&&(k=i*p[j])<N;++j)mn[k]=p[j];
- }
- int y=mod=P;
- for(int i=1;p[i]*p[i]<=y;++i){
- if(y%p[i]==0){
- mod/=p[i],mod*=p[i]-1;
- do y/=p[i];while(y%p[i]==0);
- }
- }
- if(y^1)mod/=y,mod*=y-1;
- }
- int c[N],a[N],b[N];
- inline void mad(int&x,int y){
- x=(x+y>=mod?x+y-mod:x+y);
- }
- inline int pw(int n,int m){
- int r=1;for(;m;m>>=1,n=(ll)n*n%P)if(m&1)r=(ll)r*n%P;
- return r;
- }
- int main(){
- #ifdef flukehn
- freopen("test.txt","r",stdin);
- #endif
- n=rd(),P=rd();
- Init();
- rep(i,1,n)a[i]=rd();
- rep(i,1,n)b[i]=rd();
- rep(i,1,n)++c[b[i]],--c[a[i]],--c[b[i]-a[i]];
- per(i,2,N-2)c[i]+=c[i+1];
- For(i,2,N)c[i]=(c[i]%mod+mod)%mod;
- ll ans=1;
- per(i,2,N-1)if(c[i]){
- if(mn[i]==i)ans=ans*pw(i,c[i])%P;
- else mad(c[mn[i]],c[i]),mad(c[i/mn[i]],c[i]);
- }
- cout<<ans<<endl;
- }
LOJ 6019的更多相关文章
- Loj #6019. 「from CommonAnts」寻找 LCM
给个链接:https://loj.ac/problem/6019 还是一道扩展卢卡斯+中国剩余定理....就当练练手 但是这题怎么这么卡常呢????!!!!! 在LOJ上死也过不去 (为什么要加那么多 ...
- [Noi2016]区间 BZOJ4653 洛谷P1712 Loj#2086
额... 首先,看到这道题,第一想法就是二分答案+线段树... 兴高采烈的认为我一定能AC,之后发现n是500000... nlog^2=80%,亲测可过... 由于答案是求满足题意的最大长度-最小长 ...
- Loj #2192. 「SHOI2014」概率充电器
Loj #2192. 「SHOI2014」概率充电器 题目描述 著名的电子产品品牌 SHOI 刚刚发布了引领世界潮流的下一代电子产品--概率充电器: 「采用全新纳米级加工技术,实现元件与导线能否通电完 ...
- Loj #3096. 「SNOI2019」数论
Loj #3096. 「SNOI2019」数论 题目描述 给出正整数 \(P, Q, T\),大小为 \(n\) 的整数集 \(A\) 和大小为 \(m\) 的整数集 \(B\),请你求出: \[ \ ...
- Loj #3093. 「BJOI2019」光线
Loj #3093. 「BJOI2019」光线 题目描述 当一束光打到一层玻璃上时,有一定比例的光会穿过这层玻璃,一定比例的光会被反射回去,剩下的光被玻璃吸收. 设对于任意 \(x\),有 \(x\t ...
- Loj #3089. 「BJOI2019」奥术神杖
Loj #3089. 「BJOI2019」奥术神杖 题目描述 Bezorath 大陆抵抗地灾军团入侵的战争进入了僵持的阶段,世世代代生活在 Bezorath 这片大陆的精灵们开始寻找远古时代诸神遗留的 ...
- Loj #2542. 「PKUWC2018」随机游走
Loj #2542. 「PKUWC2018」随机游走 题目描述 给定一棵 \(n\) 个结点的树,你从点 \(x\) 出发,每次等概率随机选择一条与所在点相邻的边走过去. 有 \(Q\) 次询问,每次 ...
- Loj #2331. 「清华集训 2017」某位歌姬的故事
Loj #2331. 「清华集训 2017」某位歌姬的故事 IA 是一名会唱歌的女孩子. IOI2018 就要来了,IA 决定给参赛选手们写一首歌,以表达美好的祝愿.这首歌一共有 \(n\) 个音符, ...
- 【LOJ#3097】[SNOI2019]通信(费用流)
[LOJ#3097][SNOI2019]通信(费用流) 题面 LOJ 题解 暴力就直接连\(O(n^2)\)条边. 然后分治/主席树优化连边就行了. 抄zsy代码,zsy代码是真的短 #include ...
随机推荐
- MVC系统过滤器 OutputCacheAttribute
命名空间: System.Web.Mvc程序集: System.Web.Mvc(在 System.Web.Mvc.dll 中) 一.MVC缓存简介 缓存是将信息(数据或页面)放在内存中以避免频繁的 ...
- CSS之Background
实验环境 [Windows 10] Chrome 73.0.3683.103(386,64bit) background作用范围 content+padding 参考文献 [1] CSS backgr ...
- Spring-Boot配置文件web性能(服务器)配置项
参数 介绍server.address 服务器应绑定到的网络地址server.compression.enabled = false 如果启用响应压缩server.compression.exclud ...
- nginx,作为前端的你会多少?
--现在阅读的你,如果是个FE,相信你不是个纯切图仔.反之,如果是,该进阶了,老铁! 前端的我们,已经不仅仅是做页面,写样式了,我们还需要会做相关的服务器部署.废话不多说,下面就从前端的角度来讲以下n ...
- 留恋 nyoj 854
留恋 时间限制:1000 ms | 内存限制:65535 KB 难度:2 描述 大家都知道,高中的时候,座位基本都是固定的,但是对于视力不好却又坐在后面的人是很不公平的. 念情的高中班主任安哥 ...
- GCD nyoj 1007 (欧拉函数+欧几里得)
GCD nyoj 1007 (欧拉函数+欧几里得) GCD 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 The greatest common divisor ...
- WEB部分题目writeup
MEIZIJIU_PHP 题目链接: http://202.112.51.184:20001/ 打开网页出现一段PHP代码: 代码大意就是如果得到的code不为空则执行下列操作: 如果code长度大于 ...
- Mysql 多实例 +表损坏
什么是实例? 进程+多个线程+预分配的内存结构 MySQL多实例: 多个进程+多个线程+多个预分配内存结构 多个配置文件: 1)多个端口 2)多个数据目录 3)多个socket文件 ./mysql_i ...
- nginx rewrite规则笔记
优先级 在nginx的location和配置中location的顺序没有太大关系.正location表达式的类型有关.相同类型的表达式,字符串长的会优先匹配. 第一优先级:等号类型(=)的优先级最高. ...
- 一丶HTML介绍
import socket def main(): sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.bind(('local ...