链接:http://acm.hdu.edu.cn/showproblem.php?pid=6114

Problem Description
車是中国象棋中的一种棋子,它能攻击同一行或同一列中没有其他棋子阻隔的棋子。一天,小度在棋盘上摆起了许多車……他想知道,在一共N×M个点的矩形棋盘中摆最多个数的車使其互不攻击的方案数。他经过思考,得出了答案。但他仍不满足,想增加一个条件:对于任何一个車A,如果有其他一个車B在它的上方(車B行号小于車A),那么車A必须在車B的右边(車A列号大于車B)。 现在要问问你,满足要求的方案数是多少。 Input
第一行一个正整数T,表示数据组数。 对于每组数据:一行,两个正整数N和M(N<=,M<=)。 Output
对于每组数据输出一行,代表方案数模1000000007(1e9+)。 Sample Input Sample Output Source
"百度之星"程序设计大赛 - 初赛(B)

题干

就是简单的组合数。

#include<cstdlib>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<iostream>
#include<algorithm>
#include<queue>
using namespace std;
#define MOD 1000000007
#define LL long long
int n,m,t;
LL f[][];
int main()
{
scanf("%d",&t);
f[][]=;
for(int i=;i<=;i++)
{
f[i][]=;
for(int j=;j<i;j++)
f[i][j]=(f[i-][j-]+f[i-][j])%MOD;
f[i][i]=;
}
while(t--)
{
scanf("%d%d",&n,&m);
if(n>m) {int temp=m; m=n; n=temp;}
if(m==||n==)
{
cout<<<<endl;
continue;
}
cout<<f[m][n]<<endl;
}
return ;
}

代码

最新文章

  1. Spring profile配置应用
  2. Linux /proc/$pid部分内容详解
  3. guava 学习笔记 使用瓜娃(guava)的选择和预判断使代码变得简洁
  4. Mysql占用过高CPU时的优化手段
  5. TCP 连接中断的判断
  6. C#_简单实用的翻页
  7. lsof 简介
  8. PHP中的include和require
  9. eclipse 中提示tomcat 的端口被占用了 后的最快捷解决方法
  10. json2.js使用参考
  11. lshw 命令(查看硬件信息)
  12. POJ3186:Treats for the Cows(区间DP)
  13. Cocos2dx开发(3)——Cocos2dx打包成APK,ANT环境搭建
  14. LED驅動電路概述
  15. Jquery remove()和empty()
  16. SCU 3132(博弈)
  17. 2017计算机学科夏令营上机考试-A判决素数个数
  18. python Socket socketserver
  19. flutter -webview 报错 err_cleartext_not_permitted
  20. 解决 c3p0报错 Establishing SSL connection without server&#39;s identity verification is not recommended

热门文章

  1. Tensorflow深度学习之十二:基础图像处理之二
  2. easyui tree 树形节点 formatter 渲染不起作用
  3. SecureCRT远程连接虚拟机CentOS的三种方式
  4. JQ对象和原生DOM对象
  5. Android四种启动模式
  6. 2.3-2.6 HBase java API
  7. Identity Server 4 原理和实战(完结)_Hybrid Flow 实例, Claims, 角色授权和策略授权
  8. Win10的Hyper-V虚拟机上安装Ubuntu后显示分辨率问题
  9. Weekly Contest 111--------&gt;944. Delete Columns to Make Sorted
  10. lightoj1047 【简单线性DP】