hdu Data Structure? 线段树
来源:互联网 发布:淘宝摩托车准备店铺 编辑:程序博客网 时间:2024/05/21 06:30
线段树维护该区间有多少个数就好,计算名次时二分一下。
#include <stdio.h>#define maxn 362144 int tree[4*maxn];void pushup(int o){ tree[o]=tree[o*2]+tree[o*2+1];}void build(int l,int r,int o){ if(l==r) { tree[o]=1; return ; } int m=(l+r)/2; build(l,m,o*2); build(m+1,r,o*2+1); pushup(o);}int query(int p,int l,int r,int o){ if(l==r) { tree[o]=0; return l; } int ans; int m=(l+r)/2; if(tree[o*2]>=p) ans=query(p,l,m,2*o); else ans=query(p-tree[o*2],m+1,r,2*o+1); pushup(o); return ans;}int main(){ int t; int n,k; int i,x; int cas=0; scanf("%d",&t); while(t--) { cas++; scanf("%d%d",&n,&k); build(1,n,1); __int64 tot=0; for(i=1;i<=k;i++) { scanf("%d",&x); tot+=query(x,1,n,1); } printf("Case %d: %I64d\n",cas,tot); } return 0;}
0 0
- hdu Data Structure? 线段树
- HDU 4217 Data Structure?(线段树)
- hdu 2817 Data Structure? (线段树)
- HDU--4217 -- Data Structure? [线段树]
- hdu-4217-Data Structure? 线段树
- 杭电hdu 4217 Data Structure? 线段树
- hdu 题目4217 Data Structure?(线段树,单点更新)
- HDU 4217 Data Structure? 线段树 OR 树状数组
- hdu4217 Data Structure? 线段树
- hdu4217 Data Structure?(线段树)
- HDU4217-Data Structure?(线段树)
- HDU4217 Data Structure(线段树)
- Data Structure: Segment Tree 线段树
- HDU 4217 Data Structure?(线段树 or 树状数组啊)
- HDU 4217 Data Structure?(线段树的查找和更新)
- hdu-4217Data Structure?
- hdu 4217 Data Structure?
- HDU 4217 Data Structure?
- 和程序员约会的十个理由
- 谷歌Web中文开发手册:2创建内容和结构
- HDU 3360-National Treasures(最小点覆盖+奇偶匹配)
- sphinx 采用c扩展xmlpipe2数据源 .
- “浅拷贝”与“深拷贝”
- hdu Data Structure? 线段树
- BlueTooth: 蓝牙查寻的细节过程
- Oracle与MySQL的区别(待扩展)
- Maven3 安装使用(三)--搭建公司局域网maven服务器
- snmp4j编程之一 GET操作
- MyEclipse8.6安装svn(非link方式)
- Joda
- CRM WEB UI EXCEL DOWNLOAD ERROR
- 解决不能执行已释放的js脚本问题