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

            C小加

            厚德 博學 求真 至善 The bright moon and breeze
            posts - 145, comments - 195, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            Ural 1005 Stone Pilet NYOJ zb的生日 解題報告

            Posted on 2011-12-09 20:44 C小加 閱讀(1775) 評論(2)  編輯 收藏 引用 所屬分類: 解題報告

            NYOJ地址:http://acm.nyist.net/JudgeOnline/problem.php?pid=325
            題意:

            把所給出的石頭分成兩堆,使兩堆的差最小。

            思路:

            這道題可以用01背包寫。。也可以直接暴力。。。題上的數據范圍決定了dp的效率沒有暴力的高。。

            代碼:

            #include <iostream>
            #include 
            <algorithm>
            #include 
            <cstring>
            #include 
            <cmath>
            using namespace std;

            int a[23];
            int sumAll;
            int def;
            void DFS(int sum,int i)
            {
                
            if(i<0return;
                
            int temp=abs(sumAll-2*sum);
                
            if(def>temp) def=temp;
                DFS(sum
            +a[i],i-1);
                DFS(sum,i
            -1);
            }


            int main()
            {

                    
            int n;
                    cin
            >>n;
                
                    memset(a,
            0,sizeof(a));
                    
            int i=0;
                    sumAll
            =0;
                    def
            =0x7fffffff-1;
                    
            for(;i<n;i++)
                    {
                        cin
            >>a[i];
                        sumAll
            +=a[i];
                    }

                    DFS(
            0,n-1);
                    cout
            <<def<<endl;




                

                
            return 0;
            }

             

            Feedback

            # re: Ural 1005 Stone Pilet NYOJ zb的生日 解題報告  回復  更多評論   

            2011-12-16 22:57 by alafeizai
            我寫了個dp的,但是wa了,請問有什么比較特殊的測試用例嗎?

            #include <iostream>
            #include <stdio.h>
            #include <algorithm>
            #include <cstring>
            #include <stdlib.h>

            using namespace std;

            int a[20];
            int f[200003];
            int total=0;

            void calc(int n)
            {
            for(int i=0; i<n; i++)
            {
            for(int j=total/2-a[i]; j>=0; j--)
            {
            if(f[j] == 1)
            {
            f[j+a[i]]=1;
            }
            }
            }
            }

            int main()
            {
            int n;
            while(scanf("%d",&n)!=EOF)
            {
            memset(a,0,20);
            memset(f,0,200003);
            f[0] = 1;
            total = 0;

            for(int i=0; i<n; i++)
            {
            scanf("%d",&a[i]);
            total+=a[i];
            }

            calc(n);

            for(int i=total/2; i>=0; i--)
            {
            if(f[i]==1)
            {
            printf("%d\n",total-2*i);
            break;
            }
            }

            }

            return 0;
            }

            # re: Ural 1005 Stone Pilet NYOJ zb的生日 解題報告  回復  更多評論   

            2011-12-16 23:13 by C小加
            清零的時候用這樣的格式
            memset(a,0,sizeof(a));
            @alafeizai
            久久精品国产福利国产秒| 99久久国产综合精品麻豆| 亚洲综合久久夜AV | 亚洲精品乱码久久久久久久久久久久| 亚洲午夜无码久久久久| 国产精品久久波多野结衣| 欧美色综合久久久久久| 久久精品国产久精国产思思 | 久久夜色精品国产噜噜麻豆| 久久91亚洲人成电影网站| 久久久国产99久久国产一| 久久精品国产亚洲AV高清热| 久久香综合精品久久伊人| 久久久99精品成人片中文字幕 | 观看 国产综合久久久久鬼色 欧美 亚洲 一区二区 | 少妇内射兰兰久久| 精品久久久久成人码免费动漫| 国内精品伊人久久久久| 青草国产精品久久久久久| 思思久久99热只有频精品66| 国内精品免费久久影院| 国产成人99久久亚洲综合精品 | 精品久久久久久久中文字幕 | 久久国产成人精品麻豆| 久久久久久久久久久久中文字幕| 一本色道久久综合| 久久久久久毛片免费看| 久久中文精品无码中文字幕| 国产精品久久久久一区二区三区| 色综合久久久久网| 久久九九有精品国产23百花影院| 香蕉久久夜色精品升级完成| 99久久精品免费看国产一区二区三区 | 九九久久精品无码专区| 国产精品日韩深夜福利久久| 久久99国产精品久久99| 久久精品国产99国产电影网| 久久―日本道色综合久久| 欧美激情精品久久久久| 久久久久99精品成人片三人毛片| 青青草国产97免久久费观看|