BZOJ - 3622:已经没有什么好害怕的了 (广义容斥)
2024-09-04 12:14:14
【BZOJ3622】已经没有什么好害怕的了
Description
Input
Output
Sample Input
4 2
5 35 15 45
40 20 10 30
5 35 15 45
40 20 10 30
Sample Output
4
HINT
输入的2*n个数字保证全不相同。
题意:给定a数组和b数组,大小都为N,现在让你两两配对,使得a>b个个数=(N+K)/2; a<b的个数=(N-K)/2;
思路:用容斥来求。 我们假设a>b为A情况,a<b为B情况。先让ab数组分别排序; f[i][j]表示前i个a数组至少存在j个A情况的方案数,那么可以得到f的递推式。 最后用容斥来累加答案。
推荐CQZhangYU的博客。
#include<bits/stdc++.h>
#define ll long long
#define rep(i,a,b) for(int i=a;i<=b;i++)
using namespace std;
const int maxn=;
const int Mod=1e9+;
int C[maxn][maxn],f[maxn][maxn],a[maxn],b[maxn],jc[maxn],ans;
int main()
{
int N,K; scanf("%d%d",&N,&K);
jc[]=; rep(i,,N) jc[i]=(ll)jc[i-]*i%Mod;
rep(i,,N){
C[i][]=;
rep(j,,i) C[i][j]=(C[i-][j]+C[i-][j-])%Mod;
}
rep(i,,N) scanf("%d",&a[i]);
rep(i,,N) scanf("%d",&b[i]);
sort(a+,a+N+) ;sort(b+,b+N+);
f[][]=;
rep(i,,N){
int pos=upper_bound(b+,b+N+,a[i])-b; pos--;
rep(j,,i){
f[i][j]=(f[i-][j]+(ll)f[i-][j-]*max(pos-j+,)%Mod)%Mod;
}
f[i][]=f[i-][];
}
if((N+K)%==) return puts(""),;
K=(N+K)/;
rep(i,K,N){
f[N][i]=(ll)f[N][i]*jc[N-i]%Mod;
if((i-K)&) ans=((ans-(ll)f[N][i]*C[i][K]%Mod)%Mod+Mod)%Mod;
else ans=(ans+(ll)f[N][i]*C[i][K]%Mod)%Mod;
}
printf("%lld\n",(ans%Mod+Mod)%Mod);
return ;
}
最新文章
- 如何快速开发SPA应用
- #研发解决方案#discache-分布式缓存查询与管理系统
- 巧用freemarker
- php获取真实IP地址
- Spring day01笔记
- Find Minimum in Rotated Sorted Array leetcode
- js中document.all 的用法
- winform程序开机自动启动代码
- SQL Server 各任务所维护
- Python新手学习基础之函数-全局变量和局部变量
- Esper学习之六:EPL语法(二)
- vim vimrc
- Windows Azure Platform Introduction (14) 申请海外的Windows Azure账户
- 福州大学W班-助教总结
- SpringMVC+Apache Shiro+JPA(hibernate)案例教学(三)给Shiro登录验证加上验证码
- CentOS7 vi编辑命令【转】
- CSS :invalid 选择器
- tp框架中的一些疑点知识-4
- 【BZOJ1082】【SCOI2005】栅栏
- STL进阶--vector vs deque
热门文章
- 【Head First Servlets and JSP】笔记2:MVC迷你教程
- EasyUI中datagrid双击事件
- Apache 日志管理
- React Native常用组件之TabBarIOS、TabBarIOS.Item组件、Navigator组件、NavigatorIOS组件、React Navigation第三方
- java判断集合list是为空
- vim终端复制_不开启xterm_clipboard的解决方式
- 【bzoj5427】最长上升子序列(贪心+LIS)
- LeetCode第[62]题(Java):Unique Paths 及扩展
- d2.js学习笔记(七)——动态SVG坐标空间
- yii2:如果获取config/web.php配置的值?