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

题解:CF2150B Grid Counting

题解:CF2150B Grid Counting

思路

首先,因为题目的第二、三条限制,每个 kkk 都对应一个黑色格子,所以黑色格子一共有 nnn 个。

首先,我们必须在 (1,1)(1,1)(1,1)(1,n)(1,n)(1,n) 位置放黑色格子,因为只有他们能满足 k=1k=1k=1 时的第二、三条限制。

那么,在 (1,1)(1,1)(1,1) 下面的格子就必须都为白色,因为 (1,1)(1,1)(1,1) 对于第三条限制的 k=nk=nk=n,此时 (1,1)(1,1)(1,1)n−yi+1n-y_i+1nyi+1 为最大值,而在 (1,1)(1,1)(1,1) 下面的点的的 yi=1y_i=1yi=1,和 (1,1)(1,1)(1,1) 相等,所以不能选,以此类推,在 (1,n)(1,n)(1,n) 下面的格子也必须为白色。

接下来考虑第二、三条限制 k=2k=2k=2 的情况,因为第 111nnn 列不能选,所以只能选第 222n−1n-1n1 列中 xi≥2x_i \ge 2xi2 的格子。

以此类推,最终能选的格子即为下图:

其中黑色为必选的部分,灰色为可选的部分(每列选一个)。

那么接下来我们倒序枚举 nnn111,设当前一共可以放的黑色格子数量为 cntcntcnt,每遇到可以放黑色格子的行就将 cntcntcnt 加上本行加的黑色格子数量,比如到第 222 行可以多放两个,如果 cnt<aicnt<a_icnt<ai 则无解,每次将答案乘上 (cntai)\dbinom{cnt}{a_i}(aicnt) 即可。

代码

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int mod=998244353;
int t,n,a[200010];
ll f[200010];
ll qpow(ll a,ll b){ll ans=1;for(;b;b>>=1,a=a*a%mod)if(b&1)ans=ans*a%mod;return ans;
}
ll C(ll n,ll m){if(n<m)return 0;return f[n]*qpow(f[m],mod-2)%mod*qpow(f[n-m],mod-2)%mod;
}
int main(){ios::sync_with_stdio(0);cin.tie(0);f[0]=1;for(int i=1;i<=200000;i++)f[i]=f[i-1]*i%mod;cin>>t;while(t--){cin>>n;for(int i=1;i<=n;i++){cin>>a[i];}int cnt=0,fl=1;ll ans=1;for(int i=n;i>=1;i--){if(i*2==n+1)cnt++;else if(i*2<=n)cnt+=2;if(cnt<a[i]){fl=0;break;}ans=ans*C(cnt,a[i])%mod;cnt-=a[i];}if(cnt!=0||!fl){cout<<"0\n";}else{cout<<ans<<'\n';}}return 0;
}
http://www.dtcms.com/a/548478.html

相关文章:

  • 远程操作怕“泄密“?深度解析ToDesk/向日葵/Splashtop/AnyDesk安全隐私防护力
  • SQL之表的查改(上)
  • 专业制作网站 郑在电脑上做苗木网站
  • wordpress 主题采集网站大图片优化
  • 快站app制作教程钟表玻璃东莞网站建设
  • 网站首页一般做多大尺寸小程序开发兼职
  • 菜鸟网站建设行业网站建设哪家好
  • 自助建站源码下载直播软件视频软件
  • 安徽省建设干部学校网站关停手机网站开发软件下载
  • 电子手工外发加工网成都黑帽seo
  • 常德seowordpress评论框优化
  • 石家庄企业建站哪家好可以做用户调研的网站
  • 广西网站建设定制医疗营销网站建设
  • 企业网站内容如何搭建wordpress模板本地怎么安装
  • 免费网站在线观看人数在哪直播中小企业网站建设价格
  • 郑州陆港开发建设有限公司网站wordpress 关闭警告
  • 做韩国的跨境电商网站如何k掉网站
  • 佛山免费网站建设网站如何优化
  • 企业网网站怎么做保定建网站公司
  • 建设银行辽宁招聘网站社科联网站建设方案策划书
  • 如何建网站要什么条件wordpress 多地址插件
  • 有没有专门做尾料回收的网站宁德网站建设
  • 有关天猫网站开发的论文搭建钓鱼网站教程
  • 连云港网站建设培训班ajax瀑布流网站模板
  • 咸阳企业网站设计开发制作做网站外包的公司好干嘛
  • 唐山市住房城乡建设局网站怎么网上宣传自己的产品
  • 金泉网普通会员可以建设网站吗网站从哪几个方面维护
  • 免费网站做logo的ppt模板下载网站
  • seo优化网站技术排名百度推广泗县网站建设与推广培训
  • 自己建设网站步骤app怎么制作流程