[题解]bzoj2142 礼物

74LS161/48 交通灯控制系统:30-5-20-5 时序逻辑电路 Multisim 仿真验证 本文详细解析了基于74LS161/48芯片的交通灯控制系统设计,通过Multisim仿真验证30-5-20-5时序逻辑电路。从系统架构搭建、状态机实现到波形分析,提供全流程操作指南与典型问题排查方法,助力数字电路课程设计高效完成。 阅读详情

Description

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

Input

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

Output

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

Sample Input

100
4 2
1
2

Sample Output

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=p1^c1 * p2^c2 * p3^c3 * … *pt ^ ct,pi为质数。
对于100%的数据,1≤n≤109,1≤m≤5,1≤pi^ci≤10^5。

Solution

%%%PoPoQQQ大爷

代码:

#include<cstdio>
#include<climits>
#include<algorithm>
using namespace std;

typedef long long LL;
const int maxn=100010;
int n,m,T,w[maxn],prime[maxn];
int p[maxn],a[maxn];
LL P,ans,tot;
bool ok[maxn];

void Make(int mx){
    for(int i=2;i<=mx;i++){
        if(!ok[i])prime[++prime[0]]=i;
        for(int j=1;j<=prime[0]&&i*prime[j]<=mx;j++){
            ok[i*prime[j]]=true;
            if(!(i%prime[j]))break;
        }
    }
}
LL Mul(LL x,LL y,LL mod=LONG_LONG_MAX){
    LL res=0;
    for(;y;y>>=1,x=(x<<1)%mod)
        if(y&1)res=(res+x)%mod;
    return res;
}
LL Pow(LL x,LL y,LL mod=LONG_LONG_MAX){
    LL res=1;
    for(;y;y>>=1,x=x*x%mod)
        if(y&1)res=res*x%mod;
    return res;
}
LL Calc(LL x,int pri){
    LL temp=pri,ans=0;
    while(temp<=x)ans+=x/temp,temp*=pri;
    return ans;
}
LL Work(LL x,LL y,int pri){
    LL res=1,temp=1;
    for(LL i=x-x%y+1;i<=x;i++)
        if(i%pri)temp=Mul(temp,i,y);
    if(x<pri)return temp;
    for(LL i=1;i<y;i++)
        if(i%pri)res=Mul(res,i,y);
    return Mul(Mul(Pow(res,x/y,y),temp,y),Work(x/pri,y,pri),y);
}

int main(){
    scanf("%lld%d%d",&P,&n,&m);
    for(int i=1;i<=m;i++)
        scanf("%d",&w[i]),tot+=w[i];
    if(tot>n)return puts("Impossible"),0;
    w[++m]=n-tot;Make(maxn-10);
    LL lst=P;
    for(int i=1;i<=prime[0];i++){
        if(!(P%prime[i])){
            p[++T]=prime[i];
            while(!(P%prime[i]))
                a[T]++,P/=prime[i];
        }
    }
    P=lst;
    for(int t=1;t<=T;t++){
        int cnt=Calc(n,p[t]);
        for(int i=1;i<=m;i++)cnt-=Calc(w[i],p[t]);
        if(cnt>=a[t])continue;
        LL sum=Pow(p[t],a[t]);
        LL phi=sum-Pow(p[t],a[t]-1);
        LL temp=Work(n,sum,p[t]);
        for(int i=1;i<=m;i++){
            LL x=Work(w[i],sum,p[t]);
            x=Pow(x,phi-1,sum);
            temp=temp*x%sum;
        }
        temp=temp*Pow(p[t],cnt,sum)%sum;
        ans=(ans+Mul(Mul(temp,(P/sum),P),Pow(P/sum,phi-1,sum),P))%P;
    }
    printf("%lld\n",ans);
    return 0;
}
ZYNQ裸机双网口通信实战:手把手教你用SDK和LWIP配置PS+PL以太网(附完整源码) 本文详细介绍了在ZYNQ裸机环境下实现双网口通信的全流程,包括硬件配置、LWIP协议栈优化及TCP通信实现。通过Vivado SDK和LWIP协议栈,开发者可以高效配置PS端内置网口与PL端扩展网口,提升嵌入式网络应用的灵活性和性能。附完整源码,助力快速开发。 阅读详情

相关推荐

envi反演水质参数_遥感水质反演之反演模型

水质反演的框架图此为反演模型的章节第一部分,统计学基础:概率论、矩阵和数理统计的知识统计学知识框架# 1 基本统计概念知识在于应用,而非记忆!我们都是在样本的层面去操作数据的,以达到对总体性质的估计和推断,拿到一组数据首先进行基本的统计描述,常用的有:样本均值: 样本方差(调整方差)不是除以n,而是n-1, 标准差为样本方差开方即可皮尔逊积矩相关系数(简称相关系数): 相关系数范围在[-1,...

weixin_35275922的博客 3229

【BZOJ2142】礼物(扩展Lucas)

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

დ♂Hany01's Blog Space♂ღ 348

数字芯片后端设计实战:Memory Compiler参数配置与SRAM生成优化

本文深入解析数字芯片后端设计中Memory Compiler的核心参数配置与SRAM生成优化策略。详细探讨了容量结构、频率设定、工艺角选择等关键参数的配置要点与常见误区,并提供了从.lib/.lef文件转换到后端流程整合的实战指南,旨在帮助设计者生成面积、性能和功耗更优的存储单元。

weixin_29194255的博客 702

[BZOJ 2142]礼物(扩展Lucas定理)

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

weixin_34268310的博客 146

从Excel到‘一张图’办案:手把手教你用AbutionGraph构建公安经侦知识图谱(含数据建模避坑指南)

本文详细介绍了如何利用AbutionGraph时序图数仓技术,将公安经侦领域的Excel、银行流水等碎片化数据转化为可交互的知识图谱。通过数据清洗、实体关系模型设计、时序数据处理等步骤,实现高效智能分析,提升办案效率。特别包含数据建模避坑指南和实战案例,助力公安金融案件侦破。

weixin_33702545的博客 343

告别命令行!用这个开源的Web版Kettle工具,5分钟搞定数据集成任务编排

本文介绍了一款开源的Web版Kettle工具,通过直观的拖拽界面大幅提升数据集成效率,告别复杂的命令行操作。该工具基于Kettle核心引擎,支持跨平台协作、轻量化访问和降低学习曲线,特别适合业务分析师快速上手。实测显示,使用该工具后任务配置错误率下降62%,协作效率提升40%。

weixin_30267785的博客 436

BZOJ2142——乘法逆元+中国剩余定理

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

stevensonson的博客 714

QGC4.0.11界面修改

QGC4.0.11。

超维空间科技的博客 2467

[BZOJ2142] 礼物 - Lucas定理及扩展 - 中国剩余定理 - 扩展欧几里得算法

2142: 礼物 Time Limit: 10 Sec  Memory Limit: 259 MB Submit: 1018  Solved: 426 [Submit][Status][Discuss] Description 一年一度的圣诞节快要来到了。每年的圣诞节小E都会收到许多礼物,当然他也会送出许多礼物。不同的人物在小E心目中的重要性不同,在小E心中分量越重的人,收到的礼物会

whzzt的博客 778

《Python星球日记》 第72天:问答系统与信息检索

《Python星球日记》 第72天:问答系统与信息检索,在前面的日子里,我们学习了自然语言处理的基础知识,包括文本预处理、词向量、Transformer架构和各种预训练模型。今天,我们将探索问答系统这一NLP的重要应用,以及如何结合信息检索技术构建智能问答系统。

Code_流苏:在代码中寻诗意,在实践中觅真知 1075

华为面试手撕真题【求1-n的最小公倍数】

求1-n的最小公倍数

MISAYAONE的博客 2万+

[BZOJ]2142 礼物 扩展Lucas

2142: 礼物 Time Limit: 10 Sec  Memory Limit: 259 MB Submit: 1788  Solved: 748 [Submit][Status][Discuss] Description 一年一度的圣诞节快要来到了。每年的圣诞节小E都会收到许多礼物,当然他也会送出许多礼物。不同的人物在小E 心目中的重要性不同,在小E心中分量越重的人,收到的礼

Le Petit Prince 531

十七、SAP-采购订单(STO)

业务逻辑、功能讲解、图文解析、章节总结

m0_72403327的博客 2068

【BZOJ2142】【扩展lucas】礼物 题解

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

It's Maverick. 543

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

BZOJ2142: 礼物

2142: 礼物 Time Limit: 10 SecMemory Limit: 259 MBSubmit: 2169Solved: 956[Submit][Status][Discuss] Description 一年一度的圣诞节快要来到了。每年的圣诞节小E都会收到许多礼物,当然他也会送出许多礼物。不同的人物在小E 心目中的重要性不同,在小E心中分量越重的人,收...

weixin_30628801的博客 79

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

【bzoj2142】礼物 扩展Lucas定理+中国剩余定理

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

wang_sj的博客 366

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

BZOJ 2142 礼物 组合数学+数论

题目大意:给定n个物品,分给m个人,每个人拿到wi个礼物,问方案数mod P P不一定为质数 首先我们把剩下的礼物也分给一个人 答案明显不变 w[++m]=n-w1-w2-...-wm 然后就会很方便地得到公式: ans=C(n,w1)*C(n-w1,w2)*C(n-w1-w2,w3)*...*C(n-w1-w2-...-w_(m-1),wm) mod P        =n!/w1!/w

世界 3000

bzoj2142 礼物 ( 扩展Lucas )

bzoj2142 礼物原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=2142题意: 小E从商店中购买了n件礼物,打算送给m个人,其中送给第i个人礼物数量为wi。请你帮忙计算出送礼物的方案数(两个方案被认为是不同的,当且仅当存在某个人在这两种方案中收到的礼物不同)。 由于方案数可能会很大,你只需要输出模P后的结果。数据范围 设P=p1^

Bfk的博客 480

【BZOJ2142】礼物 组合数+CRT

【BZOJ2142】礼物 Description 小E从商店中购买了n件礼物,打算送给m个人,其中送给第i个人礼物数量为wi。请你帮忙计算出送礼物的方案数(两个方案被认为是不同的,当且仅当存在某个人在这两种方案中收到的礼物不同)。由于方案数可能会很大,你只需要输出模P后的结果。 Input 输入的第一行包含一个正整数P,表示模; 第二行包含两个整整数n和m,分别表示...

aodanchui1057的博客 209

BZOJ2142 礼物

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

tanjunming2020的博客 1481

【BZOJ2142】礼物(拓展卢卡斯定理)

【BZOJ2142】礼物(拓展卢卡斯定理) 题面 BZOJ 洛谷 题解 显然如果\(\sum w_i>n\)无解。 否则答案就是:\(\displaystyle \prod_{i=1}^m{n-\sum_{j=0}^{i-1}w_j\choose w_i}\)。 因为并没有保证\(P\)是质数,所以需要用到拓展卢卡斯。 #include<iostream> #include&lt...

weixin_30319097的博客 187

bzoj 2142: 礼物

扩展lucas

fyc的博客 355

bzoj 2142 礼物 (组合数学+数论)

2142: 礼物 Time Limit: 10 Sec  Memory Limit: 259 MB Submit: 1139  Solved: 478 [Submit][Status][Discuss] Description 一年一度的圣诞节快要来到了。每年的圣诞节小E都会收到许多礼物,当然他也会送出许多礼物。不同的人物在小E心目中的重要性不同,在小E心中分量越重的人,收到的礼物会

clover_hxy的博客 1662

[bzoj2142][扩展lucas]礼物

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

Rose_max的博客 340

『BZOJ 2142』礼物

转载声明:http://blog.youkuaiyun.com/wzq_QwQ/article/details/46709471 题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2142题意:中文题意没人看不懂的,,,个人感想:链接上说得太清楚了,我倒是感觉好神奇这样的做法 对非素数取模就有一种可以个解决的办法了,这是一个很好的题目..这是参照了别人

Gavinjou大笨象的博客 392
上一篇: [题解]codeforces475d CGCDSSQ
下一篇: [题解]bzoj1086 SCOI2005王室联邦
Saramanda
博客等级 码龄10年 20粉丝 82原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值