Codeforces 451 E. Devu and Flowers(组合数学,数论,容斥原理)

传送门

解题思路:

假如只有 s 束花束并且不考虑 f ,那么根据隔板法的可重复的情况时,这里的答案就是

假如说只有一个 f 受到限制,其不合法时一定是取了超过 f 的花束

那么根据组合数,我们仍然可以算出其不合法的解共有:

最后,由于根据容斥,减两遍的东西要加回来,那么含有偶数个 f 的项为正,奇数个时为负。

答案就是:

搜索答案,使用Lucas定理,计算组合数上下约去。

代码:

 1 #include<cstdio>
 2 #include<cstring>
 3 #include<algorithm>
 4 typedef long long lnt;
 5 const lnt mod=(lnt)(1e9+7);
 6 int n;
 7 lnt s,ans;
 8 lnt f[1000];
 9 lnt ksm(lnt x,lnt y)
10 {
11     lnt ans=1;
12     while(y)
13     {
14         if(y&1)
15             ans=ans*x%mod;
16         x=x*x%mod;
17         y=y/2;
18     }
19     return ans;
20 }
21 lnt Lucas(lnt n,lnt m)
22 {
23     if(n<mod&&m<mod)
24     {
25         if(n<m)    return 0;
26         if(n==m)return 1;
27         if(m==0)return 1;
28         lnt nj=1,mj=1;
29         lnt a=n-m,b=m;
30         if(a>b)
31             std::swap(a,b);
32         lnt i=b+1;
33         while(i<=n)
34         {
35             nj=(nj*i)%mod;
36             i++;
37         }
38         i=2;
39         while(i<=a)
40         {
41             mj=(mj*i)%mod;
42             i++;
43         }
44         return ksm(mj,mod-2)*nj%mod;
45     }
46     return Lucas(n%mod,m%mod)*Lucas(n/mod,m/mod)%mod;
47 }
48 lnt dle(lnt x)
49 {
50     return (((1&x)^1)<<1)-1;
51 }
52 void dfs(int p,int l,lnt sum)
53 {
54     if(p==n+1)
55     {
56         ans=(ans+dle(l)*Lucas(s-sum+n-1,n-1))%mod;
57         return ;
58     }
59     dfs(p+1,l,sum);
60     dfs(p+1,l+1,sum+f[p]+1);
61     return ;
62 }
63 int main()
64 {
65     scanf("%d%I64d",&n,&s);
66     for(int i=1;i<=n;i++)
67         scanf("%I64d",&f[i]);
68     ans=0;
69     dfs(1,0,0);
70     printf("%I64d\n",(ans%mod+mod)%mod);
71     return 0;
72 }

 

转载于:https://www.cnblogs.com/blog-Dr-J/p/9886532.html

内容概要:该研究通过在黑龙江省某示范村进行24小时实地测试,比较了燃煤炉具与自动/手动进料生物质炉具的污染物排放特征。结果显示,生物质炉具相比燃煤炉具显著降低了PM2.5、CO和SO2的排放(自动进料分别降低41.2%、54.3%、40.0%;手动进料降低35.3%、22.1%、20.0%),但NOx排放未降低甚至有所增加。研究还发现,经济性和便利性是影响生物质炉具推广的重要因素。该研究不仅提供了实际排放数据支持,还通过Python代码详细复现了排放特征比较、减排效果计算和结果可视化,进一步探讨了燃料性质、动态排放特征、碳平衡计算以及政策建议。 适合人群:从事环境科学研究的学者、政府环保部门工作人员、能源政策制定者、关注农村能源转型的社会人士。 使用场景及目标:①评估生物质炉具在农村地区的推广潜力;②为政策制定者提供科学依据,优化补贴政策;③帮助研究人员深入了解生物质炉具的排放特征和技术改进方向;④为企业研发更高效的生物质炉具提供参考。 其他说明:该研究通过大量数据分析和模拟,揭示了生物质炉具在实际应用中的优点和挑战,特别是NOx排放增加的问题。研究还提出了多项具体的技术改进方向和政策建议,如优化进料方式、提高热效率、建设本地颗粒厂等,为生物质炉具的广泛推广提供了可行路径。此外,研究还开发了一个智能政策建议生成系统,可以根据不同地区的特征定制化生成政策建议,为农村能源转型提供了有力支持。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值