• <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>

            ArcTan

            dfs
            隨筆 - 16, 文章 - 117, 評論 - 6, 引用 - 0
            數據加載中……

            uva 12018 DP+離散化


            題目大意:
                  切水果游戲,在屏幕上任意時刻,你可以切掉屏幕上所有的水果。如果切掉的水果數大于2,那所得分就是水果數,否則為0.

                  給n個水果序列[st,et]出現時間和結束時間,問最后最多能獲得多少分。

            DP+離散化(不懂什么叫離散化!)
                  dp[i]=max{dp[j-1]+cute[j,i],1<=j<=i}
                  以開始時間遞增排序求cute[j,i]
            #include<stdio.h>
            #include
            <string.h>
            #include
            <math.h>
            int x[1005],y[1005],dp[1005];
            int n,ans;
            void qxsort(int l,int r)
            {  
                
            int i,j,mid,tmp;
                i
            =l;
                j
            =r;
                mid
            =x[(i+j)/2];
                
            while (i<=j)
                {
                    
            while (x[i]<mid)    i++;
                    
            while (x[j]>mid)    j--;
                    
            if (i<=j)
                    {
                        tmp
            =x[i];
                        x[i]
            =x[j];
                        x[j]
            =tmp;
                        tmp
            =y[i];
                        y[i]
            =y[j];
                        y[j]
            =tmp;
                        i
            ++;
                        j
            --;
                    }
                }
                
            if (l<j)    qxsort(l,j);
                
            if (i<r)    qxsort(i,r);
            }
            int max(int a,int b)
            {
                
            if (a>b)
                    
            return a;
                
            return b;
            }
            void work()
            {
                
            int i,j,s,now;
                memset(dp,
            0,sizeof(dp));
                qxsort(
            1,n);
                ans
            =0;
                
            for (i=3;i<=n ;i++ )
                {
                    
            if (i+1<=&& x[i]==x[i+1]) continue;
                    s
            =0;
                    
            for (j=i;j>=1 ;j-- )
                    {
                        
            if (x[j]<=x[i] && y[j]>=x[i])    s++;
                        now
            =s;
                        
            if (now<3)
                            now
            =0;
                        dp[i]
            =max(dp[i],dp[j-1]+now);
                    }
                    ans
            =max(ans,dp[i]);
                }
            }
            int main()
            {
                
            int t,i,cas=0;
                scanf(
            "%d",&t);
                
            while (t--)
                {
                    scanf(
            "%d",&n);
                    
            for (i=1;i<=n ;i++ )
                        scanf(
            "%d%d",&x[i],&y[i]);
                    work();
                    printf(
            "Case #%d: %d\n",++cas,ans);
                }
                
            return 0;
            }

            哎,真是弱爆了,看來dp題目真的很多很變態啊。要多想想了
            還是,問題本質很重要!!!!

            posted on 2012-05-09 21:28 wangs 閱讀(289) 評論(0)  編輯 收藏 引用 所屬分類: ACM-DP

            手机看片久久高清国产日韩| 婷婷久久综合九色综合九七| 久久综合给合久久狠狠狠97色 | 国产人久久人人人人爽| 日韩精品久久久久久久电影蜜臀| 久久天天躁狠狠躁夜夜2020老熟妇| 亚洲国产日韩欧美久久| 日日狠狠久久偷偷色综合0| 狠狠人妻久久久久久综合| 色综合久久夜色精品国产| 久久久网中文字幕| 亚洲AV无码久久寂寞少妇| 久久青青草原精品影院| 久久久黄片| 久久综合久久综合九色| 色综合久久88色综合天天| 欧美精品一区二区久久| 亚洲精品高清国产一线久久 | 综合网日日天干夜夜久久| www.久久精品| 亚洲AV日韩精品久久久久| 婷婷综合久久狠狠色99h| 91精品国产综合久久四虎久久无码一级 | 久久99热这里只有精品国产| 伊人色综合久久| 国产V亚洲V天堂无码久久久| 久久免费精品一区二区| 久久精品国产色蜜蜜麻豆| 久久久精品波多野结衣| 老色鬼久久亚洲AV综合| 欧美麻豆久久久久久中文| 久久精品国产半推半就| AV色综合久久天堂AV色综合在| 91久久精品视频| 亚洲国产成人久久精品影视| 欧美国产精品久久高清| 97久久综合精品久久久综合| 狠狠色伊人久久精品综合网| 亚洲欧美日韩中文久久| 欧美精品丝袜久久久中文字幕| 91久久精品电影|