ZOJ 3635 树状数组+二分
来源:互联网 发布:php curl 请求头 编辑:程序博客网 时间:2024/06/07 11:37
这题那时怎么想就是想不出来……而且今晚没有多大状态,自己都晕了……一题没做出来……
baoge解释好久才懂……唉……线段树,树状数组用得还是不够熟啊……
WA了二发,才知道二分错了,二分好久不用,老是出错了现在……
#include<iostream>#include<cstring>#include<string>#include<cstdio>#define sca(a) scanf("%d",&a)#define mem(a,b) memset(a,b,sizeof(a))using namespace std;int c[50005],a[50005],b,n;void update(int x,int num){ for(int i=x; i<=n; i+=i&(-i)) c[i]+=num;}int sum(int x){ int ans=0; for(int i=x; i>=1; i-=i&(-i)) ans+=c[i]; return ans;}int main(){ int i,j,m; while(~sca(n)) { mem(c,0); for(i=1; i<=n; i++) update(i,1); for(i=1; i<=n; i++) { sca(m); int l=1,r=n; while(l<=r) { int mid=(l+r)/2,s=sum(mid); if(s>=m) r=mid-1; else l=mid+1; } a[i]=l; update(l,-1); } sca(m); for(i=0; i<m-1; i++) { sca(b); printf("%d ",a[b]); } sca(b); printf("%d\n",a[b]); } return 0;}
0 0
- ZOJ 3635 树状数组+二分
- ZOJ 3635 树状数组+二分
- zoj 3635 树状数组加二分
- zoj 3279【树状数组+二分】
- ZOJ 3635 Cinema in Akiba(树状数组 + 二分)
- ZOJ 3635 Cinema in Akiba (树状数组+二分)
- zoj 3635 Cinema in Akiba(树状数组+二分)
- ZOJ 3635 Cinema in Akiba(二分+树状数组)
- zoj 3635 Cinema in Akiba 二分+树状数组
- ZOJ 3279 Ants 二分树状数组
- ZOJ:3634Bounty hunter(二分+树状数组)
- ZOJ 3635——Cinema in Akiba(树状数组+二分)
- ZOJ 3955 Saddle Point (排序/二分/树状数组)
- zoj 3724 树状数组
- poj2892 树状数组+二分
- poj2182(二分+树状数组)
- hdu5493 树状数组+二分
- hdu5493Queue 树状数组+二分
- MQTT协议的简单介绍和服务器的安装
- CentOS6.5与XP双系统安装
- java.lang.NullPointerException at org.jivesoftware.openfire.admin.decorators.main_jsp._jspService(m
- python 读取yeelink平台指令小结
- Ubuntu10.04中的Leach协议一键安装
- ZOJ 3635 树状数组+二分
- 虚拟机VirtualBox里redhat跟主机windows 7安装增强包和设置共享文件
- 面向对象编程,我的思想(上部)
- 面向对象编程,我的思想(下部)
- 使用componentsSeparatedByCharactersInSet:方法限定输入字符的格式
- poj 2823 Sliding Window 单调队列
- myeclipse10配置maven
- Android菜鸟在成长-ListView1
- DetectSourceDemo