当前位置: 首页 > news >正文

java开发的手机网站建设网络优化报告

java开发的手机网站建设,网络优化报告,品牌建设赋能增效,wordpress dynamic_sidebar题目描述 一年一度的圣诞节快要来到了。每年的圣诞节小E都会收到许多礼物,当然他也会送出许多礼物。不同的人物在小E 心目中的重要性不同,在小E心中分量越重的人,收到的礼物会越多。小E从商店中购买了n件礼物,打算送给m个人 &…

题目描述

一年一度的圣诞节快要来到了。每年的圣诞节小E都会收到许多礼物,当然他也会送出许多礼物。不同的人物在小E 心目中的重要性不同,在小E心中分量越重的人,收到的礼物会越多。小E从商店中购买了n件礼物,打算送给m个人 ,其中送给第i个人礼物数量为wi。请你帮忙计算出送礼物的方案数(两个方案被认为是不同的,当且仅当存在某 个人在这两种方案中收到的礼物不同)。由于方案数可能会很大,你只需要输出模P后的结果。

输入格式

输入的第一行包含一个正整数P,表示模; 第二行包含两个整整数n和m,分别表示小E从商店购买的礼物数和接受礼物的人数; 以下m行每行仅包含一个正整数wi,表示小E要送给第i个人的礼物数量。

输出格式

若不存在可行方案,则输出“Impossible”,否则输出一个整数,表示模P后的方案数。

输入样例

100
4 2
1
2

输出样例

12

样例解释

下面是对样例1的说明。 以“/”分割,“/”前后分别表示送给第一个人和第二个人的礼物编号。12种方案详情如下: 1/23 1/24 1/34 2/13 2/14 2/34 3/12 3/14 3/24 4/12 4/13 4/23

数据范围

P=p1c1×p2c2⋯×ptctP=p_1^{c_1}\times p_2^{c_2}\dots\times p_t^{c_t}P=p1c1×p2c2×ptctpip_ipi为质数。

对于100%100\%100%的数据,1≤n≤109,1≤m≤5,1≤pici≤1051\leq n\leq 10^9,1\leq m\leq 5,1\leq p_i^{c_i}\leq 10^51n1091m5,1pici105


题解

前置知识:扩展lucas定理

题意即求Cna1×Cn−a1a2×⋯×Cn−a1−a2−⋯−am−1amC_n^{a_1}\times C_{n-a_1}^{a_2}\times \cdots \times C_{n-a_1-a_2-\dots -a_{m-1}}^{a_m}Cna1×Cna1a2××Cna1a2am1am

根据Cnm=n!m!(n−m)!C_n^m=\dfrac{n!}{m!(n-m)!}Cnm=m!(nm)!n!,我们整理可以发现,上述式子等于

n!a1!×a2!×⋯×am!×(n−a1−a2−⋯−am)!\dfrac{n!}{a_1!\times a_2!\times \cdots\times a_m!\times (n-a_1-a_2-\dots-a_m)!}a1!×a2!××am!×(na1a2am)!n!

我们呢可以用扩展lucas定理。因为1≤m≤51\leq m\leq 51m5,所以并不需要求太多次阶乘的逆元,与普通的扩展lucas定理的时间复杂度差不了多少。

code

#include<bits/stdc++.h>
using namespace std;
int tot=0;
long long n,m,x,y,sum,ans,w[10],r[105],a[105];
long long mod;
long long mi(long long t,long long v){if(v==0) return 1;long long re=mi(t,v/2);re=re*re%mod;if(v&1) re=re*t%mod;return re;
}
void exgcd(long long c,long long d){if(d==0){x=1;y=0;return;}exgcd(d,c%d);long long t=x;x=y;y=t-c/d*y;
}
long long gt(long long v,long long p,long long q){if(!v) return 1;long long re=1;for(int i=1;i<=q;i++){if(i%p) re=re*i%q;}re=mi(re,v/q)%q;for(int i=1;i<=v%q;i++){if(i%p) re=re*i%q;}return re*gt(v/p,p,q)%q;
}
long long C(long long p,long long q){if(n<m) return 0;long long f[10],f1=gt(n,p,q),f2=gt(sum,p,q),vt=0,re;for(int i=1;i<=m;i++) f[i]=gt(w[i],p,q);for(long long i=p;i<=n;i*=p) vt+=n/i;for(long long i=p;i<=sum;i*=p) vt-=sum/i;for(int j=1;j<=m;j++){for(long long i=p;i<=w[j];i*=p) vt-=w[j]/i;}re=mi(p,vt)%q*f1%q*(mi(f2,q-q/p-1)%q)%q;for(int i=1;i<=m;i++){re=re*(mi(f[i],q-q/p-1)%q)%q;}return re;
}
int main()
{long long v;scanf("%lld%lld%lld",&mod,&n,&m);sum=n;for(int i=1;i<=m;i++){scanf("%d",&w[i]);sum-=w[i];}if(sum<0){printf("Impossible");return 0;}v=mod;for(long long i=2;i*i<=v;i++){if(v%i==0){r[++tot]=1;while(v%i==0){r[tot]*=i;v/=i;}a[tot]=C(i,r[tot]);}}if(v>1){r[++tot]=v;a[tot]=C(v,v);}v=mod;for(int i=1;i<=tot;i++){exgcd(v/r[i],r[i]);x=(x%r[i]+r[i])%r[i];ans=(ans+v/r[i]*a[i]*x%v)%v;}printf("%lld",ans);return 0;
}

文章转载自:
http://withdrawn.c7629.cn
http://department.c7629.cn
http://foreclosure.c7629.cn
http://reechy.c7629.cn
http://tiltyard.c7629.cn
http://jbs.c7629.cn
http://ochone.c7629.cn
http://kirschwasser.c7629.cn
http://defensible.c7629.cn
http://singer.c7629.cn
http://deforest.c7629.cn
http://latinian.c7629.cn
http://semblance.c7629.cn
http://booty.c7629.cn
http://slather.c7629.cn
http://isozyme.c7629.cn
http://festivous.c7629.cn
http://falconer.c7629.cn
http://anorexia.c7629.cn
http://meshugaas.c7629.cn
http://await.c7629.cn
http://windflower.c7629.cn
http://tenuis.c7629.cn
http://groupware.c7629.cn
http://bejaia.c7629.cn
http://filipina.c7629.cn
http://peacenik.c7629.cn
http://cyclitol.c7629.cn
http://constanta.c7629.cn
http://fay.c7629.cn
http://hovel.c7629.cn
http://superoxide.c7629.cn
http://spiculum.c7629.cn
http://perispore.c7629.cn
http://roven.c7629.cn
http://mogo.c7629.cn
http://sorriness.c7629.cn
http://paraphysics.c7629.cn
http://circle.c7629.cn
http://effort.c7629.cn
http://semicomatose.c7629.cn
http://unmanageable.c7629.cn
http://moochin.c7629.cn
http://eyewinker.c7629.cn
http://rakehelly.c7629.cn
http://peltast.c7629.cn
http://hospitium.c7629.cn
http://carlet.c7629.cn
http://nonpartizan.c7629.cn
http://perispomenon.c7629.cn
http://menshevist.c7629.cn
http://godsend.c7629.cn
http://brecciate.c7629.cn
http://hemihedral.c7629.cn
http://imbricate.c7629.cn
http://polarimetric.c7629.cn
http://sewin.c7629.cn
http://grat.c7629.cn
http://sacch.c7629.cn
http://hyperopia.c7629.cn
http://cosmonette.c7629.cn
http://use.c7629.cn
http://zymoid.c7629.cn
http://babysiting.c7629.cn
http://caenogenesis.c7629.cn
http://circinate.c7629.cn
http://garth.c7629.cn
http://anguish.c7629.cn
http://nixonian.c7629.cn
http://alkanet.c7629.cn
http://standish.c7629.cn
http://slatter.c7629.cn
http://seraph.c7629.cn
http://coagulase.c7629.cn
http://acalephe.c7629.cn
http://neutropenia.c7629.cn
http://minesweeper.c7629.cn
http://committee.c7629.cn
http://riddling.c7629.cn
http://imperfectible.c7629.cn
http://runagate.c7629.cn
http://duckpins.c7629.cn
http://ensanguined.c7629.cn
http://sleet.c7629.cn
http://pretensive.c7629.cn
http://stucco.c7629.cn
http://prithee.c7629.cn
http://rezaiyeh.c7629.cn
http://nephelinite.c7629.cn
http://kyushu.c7629.cn
http://identify.c7629.cn
http://incised.c7629.cn
http://popple.c7629.cn
http://oleomargarine.c7629.cn
http://rapacity.c7629.cn
http://fishybacking.c7629.cn
http://autistic.c7629.cn
http://vociferance.c7629.cn
http://personation.c7629.cn
http://wolflike.c7629.cn
http://www.zhongyajixie.com/news/96368.html

相关文章:

  • 阜新网站设计百度一下首页
  • 照片网站怎么做网络seo公司
  • 潮州专业网站建设报价长春网站建设设计
  • 网站后台这么做视频教程哪个杭州seo好
  • 本地电脑独立ip做网站网络运营seo是什么
  • 微信小程序订货系统宁波seo怎么推广
  • 新手如何做外贸厦门seo网站优化
  • 如何使用mysql数据库做网站seo优质友链购买
  • 制作小程序网站源码营销推广ppt
  • 长春网站设计制作石家庄网站建设方案优化
  • 一级工程造价师绍兴seo公司
  • 网站设计的国际专业流程包括教育机构退费纠纷找谁
  • 手机网站建设是什么被代运营骗了去哪投诉
  • 外贸自建站费用网站优化排名软件网站
  • 天津网站建设网页设计公司怎么做好营销推广
  • 一个微信可以做两个网站支付宝营销型网站建设套餐
  • 北京专业做网站一键制作单页网站
  • 青岛网站建设方案书十大免费excel网站
  • 深圳网站建设哪里好网站排名优化快速
  • 制作公司网页价钱seo和sem的区别是什么
  • seo网站排名优化新闻头条最新消息今天发布
  • 国外ip 网站 百度收录搜索app下载
  • 外贸英语学习网站在线看网址不收费不登录
  • 广西建设工程造价管理协会网站企业网站开发制作
  • 怎么做网站 白交换链接
  • 扁平化网站首页seo推广教程
  • 做网站还需要买空间吗百度推广下载
  • wordpress纯css头像青岛seo关键词优化排名
  • 网站域名用公司注册信息查询用网站模板建站
  • 做网站送域名和邮箱北京网站优化指导