hdu 1394 Minimum Inversion Number 树状数组+递推
来源:互联网 发布:windows怎样编辑照片 编辑:程序博客网 时间:2024/06/05 01:14
水一道~
nlogn算出逆序数,再递推得到后面的答案,公式很容易推导。
#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int c[5005];int a[5005];int ans,n;int lowbit(int x){ return x&(-x);}int Sum(int end){ int sum=0; while(end>0) { sum+=c[end]; end=end-lowbit(end); } return sum;}void change(int i,int x){ while(i<=n) { c[i]=c[i]+x; i=i+lowbit(i); }}int main(){ while(scanf("%d",&n)!=EOF) { int tmp=0; int s; for(int i=1;i<=n;i++) { c[i]=0; scanf("%d",&s); a[i]=s+1; } for(int i=1;i<=n;i++) { change(a[i],1); tmp+=(i-Sum(a[i])); } ans=tmp; int now; for(int i=1;i<n;i++) { now=tmp+(n+1-2*a[i]); tmp=now; ans=min(ans,now); } printf("%d\n",ans); } return 0;}
- hdu 1394 Minimum Inversion Number 树状数组+递推
- HDU 1394 Minimum Inversion Number 树状数组
- hdu 1394 Minimum Inversion Number (树状数组)
- HDU 1394 Minimum Inversion Number(树状数组)
- HDU-1394 Minimum Inversion Number 树状数组
- HDU 1394 Minimum Inversion Number 树状数组
- HDU 1394 Minimum Inversion Number 树状数组
- HDU 1394 Minimum Inversion Number(树状数组)
- Minimum Inversion Number - HDU 1394 树状数组
- hdu 1394 Minimum Inversion Number(树状数组)
- hdu 1394 Minimum Inversion Number(树状数组)
- HDU 1394 Minimum Inversion Number (树状数组)
- hdu 1394 Minimum Inversion Number(树状数组)
- HDU 1394 Minimum Inversion Number(树状数组)
- HDU-1394 Minimum Inversion Number 树状数组
- hdu-1394-Minimum Inversion Number(树状数组)
- HDU 1394 Minimum Inversion Number 树状数组
- HDU 1394 Minimum Inversion Number 树状数组
- linux-C编程-MYSQL函数库
- 程序员的创业陷阱:我能,但不管用户在哪
- 安装oracle 11g 监听器netca 提示 use another port number the information provided。。。
- iOS 获取应用版本号
- 常用ARM汇编指令及ATPCS规则
- hdu 1394 Minimum Inversion Number 树状数组+递推
- 【VC】 CStatic 控件绘制BITMAP的方法。。
- Uninstall BullGuard Antivirus with WindowsUninstaller.Org Removal Tips
- OCX控件制作
- HNOI2004-宠物收养所
- Android之Fragment
- DirectX发展史
- 【图论01】最短路 1003 畅通工程续
- C++ STRING 和WSTRING 之间的互相转换函数