青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

M.J的blog

algorithm,ACM-ICPC
隨筆 - 39, 文章 - 11, 評論 - 20, 引用 - 0
數據加載中……

POJ.2299 Ultra-QuickSort【樹狀數組+離散化】

一個求逆序對的題,N個數,N<=500000,問排成遞增序列需要相鄰的數交換多少次。一開始沒有仔細看題,上來就做,后來才發現數的范圍是999999999。因為最多500000個數,所以數和數之間的間隔很大,可以處理一下,使數的間隔變小,然后使用樹狀數組統計某個數前邊的比它大的數的個數。將所有的數放到一個結構體里,稱作num,并增加一個成員id,然后按num遞增排列,再另開一個數組給每個數重新編號,使數的范圍都在N以內。然后就可以很自然的用樹狀數組做了。時間500ms。據說歸并排序比這個要快。
Code:
 1 #include<iostream>
 2 #include<algorithm>
 3 #define M 500001
 4 using namespace std;
 5 int c[M],aa[M],n;                   //aa數組為排序后重新編號用
 6 struct digit
 7 {
 8     int num,id;
 9 }a[M];                              //num為數的大小
10 bool cmp(digit a,digit b){
11     return a.num<b.num;
12 }
13 int lowbit(int t){                 
14     return t&(t^(t-1));
15 }
16 int sum(int t){
17     int total=0;
18     while(t>0){
19         total+=c[t];
20         t-=lowbit(t);
21     }
22     return total;
23 }
24 void update(int t,int key){
25     while(t<=n){
26         c[t]+=key;
27         t+=lowbit(t);
28     }
29 }
30 int main()
31 {
32     int i,j;
33     long long ans;
34     while(scanf("%d",&n),n){
35         memset(c,0,sizeof(c));
36         ans=0;
37         for(i=1;i<=n;i++){
38             scanf("%d",&a[i].num);
39             a[i].id=i;
40         }
41         sort(a+1,a+n+1,cmp);
42         aa[a[1].id]=1;                                 //最小的數編號為1
43         for(i=2;i<=n;++i){
44             if(a[a[i].id].num!=a[a[i-1].id].num)      //如果前后兩個數不等,則編號為下標
45                 aa[a[i].id]=i;
46             else
47                 aa[a[i].id]=aa[a[i-1].id];            //否則編號與前一個相同
48         }
49         //for(i=1;i<=n;i++) printf("%d ",aa[i]);
50         for(i=1;i<=n;++i){
51             update(aa[i],1);
52             ans+=(sum(n)-sum(aa[i]));                 //每次累加該數前邊比它大的數的個數
53         }
54         printf("%lld\n",ans);
55     }
56 }

posted on 2010-05-03 17:24 M.J 閱讀(1052) 評論(2)  編輯 收藏 引用

評論

# re: POJ.2299 Ultra-QuickSort【樹狀數組+離散化】  回復  更多評論   

排序用sort不太妥當吧 sort是不穩定排序 如果給定的序列存在多個相同的元素會出現錯誤吧 盡管這個程序oj上能ac。
大概oj上給定的數據是互不相同的吧
2011-04-12 09:25 | 銀志圓

# re: POJ.2299 Ultra-QuickSort【樹狀數組+離散化】  回復  更多評論   

stable_sort可以實現穩定排序
2011-04-12 10:21 | 銀志圓
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美一区二区在线视频| 亚洲国产美女| 西瓜成人精品人成网站| 国产欧美另类| 久久亚洲精品欧美| 欧美aaa级| 亚洲欧美国产精品桃花| 亚洲在线1234| 亚洲成人影音| 日韩午夜在线电影| 国产日韩av在线播放| 久久综合久久综合久久| 欧美福利视频一区| 亚洲一区二区三区成人在线视频精品| 亚洲网站啪啪| 一二三区精品福利视频| 亚洲免费在线播放| 伊人成人网在线看| 亚洲精品久久久久久久久久久久久| 欧美伦理视频网站| 久久国产精品久久w女人spa| 久久综合伊人77777麻豆| 一区二区三区四区五区在线| 欧美一级电影久久| 日韩亚洲欧美一区| 久久精品欧美日韩| 亚洲网站视频| 久久综合久久综合九色| 亚洲免费视频中文字幕| 久久综合网络一区二区| 午夜在线精品| 欧美日韩 国产精品| 久久综合网色—综合色88| 欧美日韩国产一中文字不卡| 久久久久久午夜| 国产精品毛片大码女人| 亚洲大片免费看| 国外视频精品毛片| 亚洲一区日韩在线| 夜色激情一区二区| 美女国内精品自产拍在线播放| 欧美一区二区三区婷婷月色| 欧美激情黄色片| 美脚丝袜一区二区三区在线观看| 国产精品另类一区| 一区二区三区四区精品| 亚洲精品乱码视频| 久久亚洲捆绑美女| 久久夜色精品亚洲噜噜国产mv| 国产精品欧美一区喷水 | 欧美日韩亚洲综合一区| 欧美福利一区二区| 狠狠久久亚洲欧美专区| 亚洲欧美日韩精品| 欧美一区二区三区在线看| 欧美日韩免费| 夜夜嗨av色一区二区不卡| 亚洲精品在线观看免费| 欧美成人免费大片| 欧美激情va永久在线播放| 亚洲国产精品传媒在线观看 | 亚洲韩国日本中文字幕| 亚洲国产一二三| 蜜臀av性久久久久蜜臀aⅴ| 免费av成人在线| 尤物精品国产第一福利三区 | 免费不卡在线视频| 欧美激情亚洲视频| 亚洲精品社区| 欧美性视频网站| 亚洲午夜激情网页| 久久国产精品99久久久久久老狼 | 欧美日韩另类一区| 亚洲天堂久久| 久久国产免费| **网站欧美大片在线观看| 亚洲影音先锋| 欧美激情视频在线播放 | 亚洲午夜激情在线| 欧美一级大片在线免费观看| 国产精品一区久久| 久久午夜羞羞影院免费观看| 欧美激情一区二区三区在线视频观看 | 99v久久综合狠狠综合久久| 亚洲欧美另类国产| 国产亚洲激情视频在线| 麻豆国产精品777777在线| 亚洲三级网站| 久久er99精品| 亚洲精品免费在线播放| 国产精品高潮呻吟视频| 久久久久.com| 99在线|亚洲一区二区| 欧美一区二区播放| 亚洲精品色图| 国产日韩精品一区| 欧美国产日韩精品| 欧美一区二区视频免费观看| 欧美激情在线观看| 欧美一区二区三区视频在线| 91久久精品国产91性色tv| 国产精品男gay被猛男狂揉视频| 久久国产黑丝| 一本色道久久综合亚洲91| 免费看成人av| 欧美一级网站| 一本色道久久88精品综合| 今天的高清视频免费播放成人 | 久久精品91久久久久久再现| 亚洲日本成人在线观看| 久久久中精品2020中文| 亚洲视频在线观看| 亚洲激情影视| 国产亚洲毛片| 国产精品日韩专区| 欧美日韩性视频在线| 久久综合五月天婷婷伊人| 亚洲欧美福利一区二区| 99精品欧美一区二区三区综合在线| 久久亚洲精品一区二区| 香蕉精品999视频一区二区| 一二美女精品欧洲| 亚洲精品久久久久| 在线国产日韩| 在线播放精品| 韩国在线视频一区| 国产亚洲欧美日韩精品| 国产精品久久999| 欧美肉体xxxx裸体137大胆| 欧美激情一二三区| 欧美精品www| 欧美激情视频在线免费观看 欧美视频免费一| 欧美一区1区三区3区公司| 中文精品视频| 亚洲视频免费在线| 亚洲尤物在线| 欧美一区二区在线看| 欧美一区二区精品| 久久99伊人| 欧美在线二区| 久久久综合精品| 老司机精品久久| 欧美大片在线看免费观看| 欧美高清视频| 欧美日韩在线视频一区二区| 欧美日韩亚洲三区| 好看的日韩视频| 久久国产精品一区二区三区四区 | 欧美中文字幕视频| 久久激情五月婷婷| 麻豆av福利av久久av| 欧美69视频| 亚洲国产精品电影在线观看| 亚洲大片精品永久免费| 日韩视频在线一区二区三区| 一本久久a久久免费精品不卡| 99在线观看免费视频精品观看| 一区二区国产在线观看| 小黄鸭精品aⅴ导航网站入口 | 一本一本久久a久久精品综合妖精 一本一本久久a久久精品综合麻豆 | 久久先锋影音av| 亚洲高清不卡一区| 一区二区av在线| 久久精品99国产精品酒店日本| 美女黄网久久| 国产精品久久久久久妇女6080| 国产欧美一区二区三区久久人妖| 国内成人精品2018免费看 | 激情综合色综合久久| 亚洲精品视频一区| 午夜综合激情| 欧美不卡视频一区发布| 日韩一级大片在线| 欧美一区二区观看视频| 欧美精品18videos性欧美| 国产色爱av资源综合区| 最近中文字幕日韩精品| 欧美伊人久久大香线蕉综合69| 免费影视亚洲| 亚洲一二三区在线| 免费看亚洲片| 国产精品综合网站| 日韩亚洲欧美一区| 久久看片网站| 在线一区二区三区四区| 久久字幕精品一区| 国产欧亚日韩视频| 日韩视频一区二区在线观看| 久久九九国产精品怡红院| 日韩午夜中文字幕| 欧美成人精品在线观看| 国产一区二区三区观看 | 亚洲国产精品成人一区二区| 午夜精品久久久久久久久久久久| 蜜臀久久99精品久久久久久9| 中日韩午夜理伦电影免费| 欧美国产欧美亚洲国产日韩mv天天看完整 | 欧美区一区二区三区| 在线成人av.com| 久久爱另类一区二区小说|