• <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>
            心如止水
            Je n'ai pas le temps
            posts - 400,comments - 130,trackbacks - 0
            排序之后找到a[(1+n)/2]這個(gè)點(diǎn),就是最優(yōu)點(diǎn),然后把n個(gè)數(shù)字的差值加起來就行了。
            可以這么考慮:如果n為偶數(shù),取a[(1+n)/2]時(shí)的解為ans。如果取a[(1+n)/2]-1,那么這個(gè)數(shù)字左邊有n/2個(gè)數(shù)字,右邊有n/2個(gè)數(shù)字,不如ans更優(yōu)。奇數(shù)時(shí)類似考慮。
            以下是我的代碼:
            #include<stdio.h>
            void Qsort(long *a,long begin,long end)
            {
                
            long i=begin,j=end,mid=a[(begin+end)/2],t;
                
            do{
                     
            while(a[i]<mid) i++;
                     
            while(a[j]>mid) j--;
                     
            if(i<=j)
                     {
                        t
            =a[i];a[i]=a[j];a[j]=t;
                        i
            ++;j--;
                     }
                }
            while(i<=j);
                
            if(begin<j) Qsort(a,begin,j);
                
            if(i<end)   Qsort(a,i,end);
            }
            long Abs(long x)
            {
                
            return (x>0?x:-x);
            }
            int main()
            {
                
            /*
                freopen("data.in","r",stdin);
                freopen("data.out","w",stdout);
                //
            */
                
            const long maxn=507;
                
            long test;
                scanf(
            "%ld",&test);
                
            while(test--)
                {
                   
            long n,mid,ans,a[maxn];
                   scanf(
            "%ld",&n);
                   
            for(long i=1;i<=n;i++) scanf("%ld",&a[i]);
                   Qsort(a,
            1,n);
                   mid
            =a[(1+n)/2];
                   ans
            =0;
                   
            for(long i=1;i<=n;i++)
                     ans
            +=Abs(mid-a[i]);
                   printf(
            "%ld\n",ans);
                }
            return 0;
            }

            posted on 2010-01-22 13:05 lee1r 閱讀(910) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 題目分類:基礎(chǔ)/模擬
            久久国产乱子伦免费精品| 久久久久国产一级毛片高清版| 久久久久香蕉视频| 久久久久久国产a免费观看黄色大片| 亚洲精品乱码久久久久久蜜桃| 热re99久久精品国99热| 激情综合色综合久久综合| 久久成人小视频| 久久精品无码专区免费青青| 久久精品视频91| 亚洲精品tv久久久久久久久| 国产激情久久久久影院| 亚洲国产精品无码久久98| 久久精品夜色噜噜亚洲A∨| 亚洲AV成人无码久久精品老人| 一本一道久久精品综合| 久久99国产精品尤物| 亚洲性久久久影院| 人人狠狠综合88综合久久| 久久99国产综合精品免费| 久久久久亚洲AV成人网人人网站| 青青青伊人色综合久久| 久久久老熟女一区二区三区| 久久夜色精品国产噜噜亚洲a| 国产99久久久久久免费看| 久久99久久99精品免视看动漫| 久久精品人人做人人爽电影| 香蕉99久久国产综合精品宅男自| 日韩欧美亚洲综合久久影院d3| 人妻无码αv中文字幕久久| 国产成人久久精品一区二区三区 | 无码精品久久久久久人妻中字| 久久99久久无码毛片一区二区| 亚洲国产精品婷婷久久| 成人资源影音先锋久久资源网| 天天躁日日躁狠狠久久| 中文字幕无码免费久久| 亚洲国产精品无码久久| 久久亚洲日韩精品一区二区三区| 亚洲精品久久久www| 一本久久知道综合久久|