题解:

首先知道一个性质,每一行每一列都最多有两个炮

那么很显然是DP

设F[i][j][k]表示前i行,有j列有一个炮,有k列有两个炮,那么转移式子为

这一行什么都不做:f[i][j][k]=f[i-1][j][k]
这一行填一个炮在列为0:f[i][j][k]=f[i-1][j-1][k]*c(m-j-k+1,1)
这一行填一个炮在列为1:f[i][j][k]=f[i-1][j+1][k-1]*c(j+1,1)
这一行填两个炮在列为0:f[i][j][k]=f[i-1][j-2][k]*c(m-j-k+2,2)
这一行填一个炮在列为0一个炮在列为1:f[i][j][k]=f[i-1][j][k-1]*c(j,1)*c(m-j-k+1,1)
这一行填两个炮在列为1:f[i][j][k]=f[i-1][j+2][k-2]*c(j+2,2)

代码:

#include<iostream>
#include<cstdio>
#include<cstdlib>
#define mod 9999973
#define ll long long
using namespace std;
int n,m,ans;
int f[][][],c[][];
int main()
{
scanf("%d%d",&n,&m);
for(int i=;i<=;i++)c[i][]=;
for(int i=;i<=;i++)
for(int j=;j<=i;j++)c[i][j]=(c[i-][j-]+c[i-][j])%mod;
f[][][]=;
for(int i=;i<=n;i++)
for(int j=;j<=m;j++)
for(int k=;j+k<=m;k++)
{
f[i][j][k]=f[i-][j][k];
if(j>=)f[i][j][k]=(f[i][j][k]+(ll)f[i-][j-][k]*c[m-j-k+][]%mod)%mod;
if(k>= && j+<=m)f[i][j][k]=(f[i][j][k]+(ll)f[i-][j+][k-]*c[j+][]%mod)%mod;
if(j>=)f[i][j][k]=(f[i][j][k]+(ll)f[i-][j-][k]*c[m-j-k+][]%mod)%mod;
if(j>= && k>=)f[i][j][k]=(f[i][j][k]+(ll)f[i-][j][k-]*c[j][]%mod*c[m-j-k+][]%mod)%mod;
if(k>= && j+<=m)f[i][j][k]=(f[i][j][k]+(ll)f[i-][j+][k-]*c[j+][])%mod;
}
for(int i=;i<=m;i++)
for(int j=;j<=m;j++)ans=(ans+f[n][i][j])%mod;
return !printf("%d\n",ans);
}

最新文章

  1. Web前端上万字的知识总结
  2. ARCGIS如何进行可视域分析
  3. Struts2中Action取得表单数据的几种方法
  4. word-wrap: break-word; break-word: break-all;区别
  5. codemirror和ace editor的语法高亮
  6. JSP 处理汉字信息
  7. AD7715
  8. java web 之 web.xml篇
  9. Ionic Android开发环境搭建 上
  10. 学习PHP时的一些总结(二)
  11. jquery 弹出框 showDialog.js具体用法
  12. BZOJ:4031: [HEOI2015]小Z的房间
  13. flask模板
  14. jdbcTemplate批量插入处理数据
  15. 一文教你看懂大数据的技术生态圈:Hadoop,hive,spark
  16. 2018-11-04 在线代码离线翻译Chrome插件&quot;一马&quot;v0.0.14
  17. Python多进程、多线程、协程
  18. 根据字体多少使UILabel自动调节尺寸
  19. Jpa实体类生成图解
  20. Nginx教程(6) 负载均衡

热门文章

  1. Ubuntu查看端口使用情况,使用netstat命令:
  2. Eclipse报内存溢出
  3. ElasticSearch删除索引
  4. 用vultr搭建ss服务器的脚本
  5. python面试题之Python如何实现单例模式?
  6. hdu 1828 Picture(线段树轮廓线)
  7. 【JAVA】 02-Java对象细节
  8. jsp常用代码
  9. vue.js(6)--v-model
  10. 2018-2-13-win10-uwp-BadgeLogo-颜色