BZOJ1227: [SDOI2009]虔诚的墓主人
来源:互联网 发布:mysql数据同步 编辑:程序博客网 时间:2024/05/01 04:56
orz hzwer
我会不会说这题代码是ba的
2333333
黄学长题解传送门
#include<iostream>#include<cstdio>#include<algorithm>#define ll long long#define P 2147483648LLusing namespace std;int n,m,w,K,H[200001];ll c[100001][11],tr[200001],ans;struct data{int x,y;}a[100005];int h[200001],l[200001];int now[200001];inline int sc(){ int x=0,f=1;char ch=getchar(); while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();} while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();} return x*f;}int find(int x){ int l=1,r=2*w,mid; while(l<=r) { int mid=(l+r)>>1; if(H[mid]<x)l=mid+1; else if(H[mid]>x)r=mid-1; else return mid; } }void getc(){c[0][0]=1;for(int i=1;i<=w;i++){c[i][0]=1; for(int j=1;j<=min(K,i);j++) c[i][j]=(c[i-1][j]+c[i-1][j-1])%P;}}int lowbit(int x){return x&(-x);}void update(int x,int y){ while(x<=2*w) { tr[x]+=y;tr[x]%=P; x+=lowbit(x); }}ll ask(int x){ ll s=0; while(x) { s+=tr[x];s%=P; x-=lowbit(x); } return s;}inline bool cmp(data a,data b){ if(a.y==b.y)return a.x<b.x; return a.y<b.y;}int main(){m=sc(),n=sc(),w=sc();for(int i=1;i<=w;i++){ a[i].x=sc(),a[i].y=sc(); H[2*i-1]=a[i].x; H[2*i]=a[i].y;} K=sc();getc(); sort(H+1,H+2*w+1); for(int i=1;i<=w;i++) { h[find(a[i].y)]++; l[find(a[i].x)]++; } sort(a+1,a+w+1,cmp); int lf; for(int i=1;i<=w;i++) { if(i>1&&a[i].y==a[i-1].y) { lf++; ll t1=ask(find(a[i].x)-1)-ask(find(a[i-1].x));ll t2=c[lf][K]*c[h[find(a[i].y)]-lf][K];ans+=t1*t2; ans%=P; } else lf=0; int d=find(a[i].x);now[d]++; int change=(c[now[d]][K]*c[l[d]-now[d]][K]-c[now[d]-1][K]*c[l[d]-now[d]+1][K])%P; update(d,change); } if(ans<0)ans+=P; cout << ans;return 0;}
0 0
- BZOJ1227: [SDOI2009]虔诚的墓主人
- 【SDOI2009】【BZOJ1227】虔诚的墓主人
- [BZOJ1227][SDOI2009]虔诚的墓主人
- 【SDOI2009】bzoj1227 虔诚的墓主人
- bzoj1227[SDOI2009]虔诚的墓主人
- bzoj1227: [SDOI2009]虔诚的墓主人
- bzoj1227 [SDOI2009]虔诚的墓主人
- BZOJ1227: [SDOI2009]虔诚的墓主人
- [BZOJ1227][SDOI2009]虔诚的墓主人
- 【BZOJ1227】【SDOI2009】虔诚的墓主人
- 【bzoj1227】【SDOI2009】【虔诚的墓主人】【组合数学+树状数组】
- [杂题 离散 扫描线] BZOJ1227: [SDOI2009]虔诚的墓主人
- [SDOI2009]虔诚的墓主人
- bzoj1227 虔诚的墓主人 树状数组
- bzoj1227 [SDOI2009]虔诚的墓主人(组合公式+离散化+线段树)
- 【BZOJ 1227】 [SDOI2009]虔诚的墓主人
- bzoj 1227: [SDOI2009]虔诚的墓主人
- bzoj 1227: [SDOI2009]虔诚的墓主人
- 立体校正相关函数
- CentOS_2_网络连接
- 图像特征提取,斑点检测
- 浏览器兼容性大全
- 新年前的最后一周之感想
- BZOJ1227: [SDOI2009]虔诚的墓主人
- redis 如何导出部分数据
- EditText之外的地方点击怎么隐藏软键盘
- 【学习笔记】将文件隐藏在BMP位图中
- chrome 忽略autocomplete
- [知其然不知其所以然-16] page reclaim and hibernation failure
- mac下nginx的安装-安装记录
- 航海王
- js jq分割字符串并延时加载到页面元素