题目描述
输入格式
第一行包括两个整数n,m表示棋盘为n行m列。
输出格式
一个整数表示可能的棋局种数。
样例
样例输入1
1 1
样例输出1
2
样例输入2
2 3
样例输出2
10
样例输入3
10 10
样例输出3
184756
数据范围与提示
对于 (20)% 的数据 (n,m<=10)
对于 (30)% 的数据 (n,m<=20)
另有 (20)% 的数据 (n<=5)
另有 (20)% 的数据 (m<=5)
对于(100)% 的数据 (n,m<=100000)
code
/*
1 2 3 4 5 6 7 3
*/
#include<bits/stdc++.h>
using namespace std;
#define int long long
const int mod = 998244353;
int ny(int a){
int ans=1;
int n=mod-2;
while(n){
if(n&1)ans=ans*a%mod;
a=a*a%mod;
n>>=1;
}
return ans;
}
long long jc(int x){
long long ans = 1;
for(int i=1;i<=x;i++)
ans=ans*i%mod;
return ans;
}
signed main(){
int n,m;cin>>n>>m;
int tmp=jc(n)*jc(m)%mod;
int ans=jc(n+m)*ny(tmp)%mod;
return cout<<ans<<endl,0;
}
研究人员在黑帽安全大会演示SSL攻击 狼人:
猫癣病毒“躲猫猫” 移师广东东莞月入百万 狼人:
Adobe两款软件存在缺陷 黑客可控制用户PC 狼人:
安全观点:遭遇数据泄露破坏 损失的不只是金钱 狼人:
McAfee报告称七成手机制造商认为手机安全至关重要 狼人:
微软表示本月将发布五个Windows 7更新 狼人:
Gmail电子邮件曝全球性故障 谷歌向用户道歉 狼人:
Google Talk被黑客利用 发动钓鱼攻击 狼人:
谷歌GMail邮件服务出现故障 部分服务已恢复 狼人: