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

posts - 100,  comments - 15,  trackbacks - 0
//參考:
http://hi.baidu.com/fandywang_jlu/blog/item/505b40f4c864bddff3d38574.html
http://blog.csdn.net/ldyhot/archive/2008/10/29/3173535.aspx

  1/*
  2線段樹+DP 
  3        出題者的簡單解題報告:把環從一個地方,切斷拉成一條直線,
  4        用線段樹記錄當前區間的非空最大子列和當前區間的非空最小
  5        子列。如果環上的數都是正整數,答案是:環上數的總和-根
  6        結點的非空最小子列;否則,答案是:max{根結點的非空最大
  7        子列, 環上數的總和-根結點的非空最小子列},每次問答的
  8        復雜度是O(logN)。
  9*/

 10
 11#include<iostream>
 12using namespace std;
 13#define MAXN 100000
 14#define MAXM 100000
 15#define MAX 262145
 16
 17struct Node
 18{
 19    int left;
 20    int right;
 21    int sum;        //該區間 數的總和 
 22    int max,min;    //該區間 最大子列和 與 最小子列和
 23    int lmax,rmax;    //該區間 從左端點開始的最大子列和 與 到右端點結束的最小子列和
 24    int lmin,rmin;    //該區間 從左端點開始的最小子列和 與 到右端點結束的最小子列和
 25}
;
 26
 27Node segtree[MAX];
 28int value[MAXN+1];
 29//int vi;
 30
 31void update (int v)
 32{
 33    segtree[v].sum=segtree[2*v].sum+segtree[2*v+1].sum;
 34    segtree[v].max=max(max(segtree[2*v].max,segtree[2*v+1].max),segtree[2*v].rmax+segtree[2*v+1].lmax);
 35    segtree[v].min=min(min(segtree[2*v].min,segtree[2*v+1].min),segtree[2*v].rmin+segtree[2*v+1].lmin);
 36    segtree[v].lmax=max(segtree[2*v].lmax, segtree[2*v].sum+segtree[2*v+1].lmax);
 37    segtree[v].rmax=max(segtree[2*v+1].rmax, segtree[2*v+1].sum+segtree[2*v].rmax);
 38    segtree[v].lmin=min(segtree[2*v].lmin,segtree[2*v].sum+segtree[2*v+1].lmin);
 39    segtree[v].rmin=min(segtree[2*v+1].rmin,segtree[2*v+1].sum+segtree[2*v].rmin);
 40}

 41
 42void build(int v,int l,int r)
 43{
 44    segtree[v].left=l;
 45    segtree[v].right=r;
 46
 47    if(l == r )
 48    {
 49        segtree[v].sum =
 50        segtree[v].max = segtree[v].min =
 51        segtree[v].lmax = segtree[v].rmax =
 52        segtree[v].lmin = segtree[v].rmin =value[l];
 53        
 54    }
else
 55    {
 56        
 57        int mid=(segtree[v].left+segtree[v].right)>>1;
 58        build(2*v,l,mid);
 59        build(2*v+1,mid+1,r);
 60        update(v);
 61    }

 62    
 63}

 64
 65void insert(int v,int index)
 66{
 67    if( segtree[v].left == segtree[v].right && segtree[v].left == index)
 68    {
 69        segtree[v].sum =
 70        segtree[v].max = segtree[v].min =
 71        segtree[v].lmax = segtree[v].rmax =
 72        segtree[v].lmin = segtree[v].rmin =value[index];
 73    }
else
 74    {
 75        int mid=(segtree[v].left+segtree[v].right)>>1;
 76        if(index <= mid) insert(2*v,index);
 77        else insert(2*v+1,index);
 78        //if(index <= segtree[2*v].right) insert(2*v,index);
 79        //else if(index >= segtree[2*v+1].left) insert(2*v+1,index);
 80        update(v);
 81    }

 82}

 83
 84int main()
 85{
 86    int n,k,i,index;
 87    scanf("%d",&n);
 88    for(i=1;i<=n;i++)
 89        scanf("%d",&value[i]);
 90
 91    build(1,1,n);
 92
 93    scanf("%d",&k);
 94    while(k--)
 95    {
 96        scanf("%d",&index);
 97        scanf("%d",&value[index]);
 98        insert(1,index);
 99        if(segtree[1].sum==segtree[1].max)
100            printf("%d\n",segtree[1].sum-segtree[1].min);
101        else printf("%d\n",max(segtree[1].max,segtree[1].sum-segtree[1].min));
102    }

103    return 0;
104}

105
posted on 2009-04-18 22:41 wyiu 閱讀(258) 評論(0)  編輯 收藏 引用 所屬分類: POJ
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美黄色日本| 亚洲人久久久| 奶水喷射视频一区| 欧美在线播放视频| 国产日韩精品入口| 蜜桃av噜噜一区| 亚洲欧美日本精品| 韩日欧美一区| 蜜臀av性久久久久蜜臀aⅴ四虎| 一区二区精品| 你懂的一区二区| 国产精品久久77777| 一本色道久久综合亚洲二区三区| 国产视频自拍一区| 午夜精品久久久久久久99樱桃| 亚洲国产日韩在线| 久久精品视频网| 狠狠色狠狠色综合人人| 性欧美办公室18xxxxhd| 亚洲视频欧美视频| 国产精品乱子乱xxxx| 亚洲影院免费观看| 99视频在线精品国自产拍免费观看 | 国产精品99久久久久久宅男| 亚洲日本激情| 欧美日韩国产不卡| aⅴ色国产欧美| 一区二区三区久久| 国产精品一二| 久久亚洲国产成人| 久久亚洲色图| 日韩亚洲精品视频| 99视频+国产日韩欧美| 国产精品高精视频免费| 欧美一区高清| 看欧美日韩国产| 亚洲精品极品| 亚洲天天影视| 国语自产精品视频在线看一大j8 | 亚洲与欧洲av电影| 国产日韩综合| 欧美国产在线电影| 欧美日韩三级电影在线| 校园春色综合网| 久色婷婷小香蕉久久| 欧美高清成人| 性做久久久久久久免费看| 欧美一区深夜视频| 亚洲国产中文字幕在线观看| 欧美一级免费视频| 免费试看一区| 久久先锋影音| 老巨人导航500精品| 国产亚洲永久域名| 亚洲一区自拍| 欧美一区二区三区啪啪| 国产精品欧美激情| 99精品国产一区二区青青牛奶 | 欧美精品日日鲁夜夜添| 久久久91精品国产一区二区三区| 亚洲国产欧美一区二区三区同亚洲| 黄色在线一区| 久久久精彩视频| 麻豆久久久9性大片| 悠悠资源网久久精品| 欧美福利视频在线观看| 日韩视频永久免费| 亚洲午夜视频在线| 亚洲精品欧美日韩| 欧美电影在线观看完整版| 艳女tv在线观看国产一区| 性刺激综合网| 亚洲视频导航| 欧美国产精品一区| 久久综合狠狠| 国产日韩欧美三级| 亚洲最新中文字幕| 亚洲人妖在线| 久久一区亚洲| 久久裸体艺术| 国产日产亚洲精品| 亚洲视频在线二区| 中文久久精品| 欧美日韩国产在线| 91久久一区二区| 亚洲国产va精品久久久不卡综合| 亚洲欧美一区二区在线观看| 亚洲一区二区少妇| 欧美激情在线播放| 亚洲丰满在线| 亚洲欧洲一区二区三区在线观看 | 另类天堂av| 国产亚洲精品aa午夜观看| 中文网丁香综合网| 在线亚洲欧美| 欧美日韩国产不卡在线看| 亚洲精品激情| 国产精品久久久一本精品| 午夜精品一区二区三区四区| 亚洲美女91| 亚洲激情在线激情| 欧美在线影院| 国产麻豆日韩| 国产日韩欧美不卡| 国产一区二区三区久久| 亚洲三级免费电影| 国产精品美女久久久浪潮软件| 亚洲一区二区在线视频| 久久九九电影| 久久av二区| 久久久久国产精品午夜一区| 国产一区av在线| 久久看片网站| 欧美国产日韩一区二区三区| 亚洲人成精品久久久久| 免费中文日韩| 亚洲精品一区中文| 亚洲欧美日韩久久精品| 国产日韩一区二区三区| 久久亚洲春色中文字幕| 欧美激情小视频| 亚洲视频在线播放| 国产视频一区在线观看| 久久综合国产精品台湾中文娱乐网 | 国产精品jizz在线观看美国| 亚洲已满18点击进入久久| 久久都是精品| 亚洲国产精品悠悠久久琪琪| 欧美肥婆在线| 亚洲午夜视频| 欧美波霸影院| 亚洲综合三区| 在线日本高清免费不卡| 欧美激情一区二区三区蜜桃视频| 一本色道久久88亚洲综合88| 久久久www免费人成黑人精品| 91久久久久| 国产免费观看久久黄| 久久综合综合久久综合| 99精品国产在热久久下载| 久久精选视频| 亚洲一级电影| 国产精品多人| 麻豆国产精品一区二区三区| 在线亚洲欧美| 欧美激情精品久久久久| 翔田千里一区二区| 亚洲精选在线观看| 国产一区二区三区四区| 欧美亚一区二区| 毛片av中文字幕一区二区| 亚洲免费在线视频| 亚洲区一区二区三区| 鲁大师影院一区二区三区| 亚洲欧美日韩精品| 日韩视频在线免费| 狠狠色综合日日| 国产精品手机视频| 午夜天堂精品久久久久| 香蕉久久夜色| 国产美女一区| 欧美成人免费全部| 欧美精品亚洲| 午夜精品影院在线观看| 亚洲在线视频观看| 亚洲黄色小视频| 一区二区三区视频在线看| 国产精品入口| 免费在线看成人av| 欧美成人按摩| 欧美一区二区三区免费视| 久久大综合网| 亚洲资源av| 99精品欧美一区二区三区综合在线| 老司机一区二区三区| 久久国产精品一区二区三区| 亚洲特黄一级片| 99热精品在线| 亚洲黄色在线| 亚洲高清av| 激情综合自拍| 影音先锋中文字幕一区| 狠狠色2019综合网| 国产亚洲一区二区三区在线观看 | 亚洲欧美另类中文字幕| 亚洲天堂av电影| 中日韩美女免费视频网址在线观看 | 欧美日韩精品一区二区在线播放| 蜜乳av另类精品一区二区| 久久免费国产| 麻豆精品在线观看| 欧美v亚洲v综合ⅴ国产v| 女仆av观看一区| 欧美成年人视频网站| 欧美久久视频| 国产精品久久国产愉拍| 国产精品久久夜| 欧美国产日韩亚洲一区| 欧美日韩不卡在线| 国产精品嫩草99av在线|