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

            光光住在農(nóng)村,離他的家不遠有一口井,傳說是光光的祖先開掘的。雖然光光的村子里通了自來水,但是由于這口井井水質(zhì)量非常的好,因此光光仍然喝這口井里的水。光光非常喜歡這口井,所以他經(jīng)常去打水。

            光光的家里有 nn 是偶數(shù)且n<=18)只桶,這些桶雖然大小相等,但是由于很多都有些破損,所以認為它們是不同的。光光經(jīng)常挑一根扁擔(帶兩只空桶,必須是空的,且是2 只)去井邊打水。光光每次去井旁都會把桶中的水裝到極限(假設(shè)水量無窮,且光光都能夠擔得動)。設(shè)光光挑得是xy 兩只桶,則打水一趟需要走 time[x,y]分鐘。光光想要在最少的時間內(nèi)用自己的力量把家里所有的空桶裝滿。光光覺得這是個難題,于是來找你幫忙。

             

            這道題并不是一道難題,只不過要注意搜索的對象。一開始的時候,我的做法是依次枚舉第12、……、n/2次選取的情況,這樣做的結(jié)果是只能通過4組數(shù)據(jù)。后來改變了搜索對象,依次枚舉第12、……、n個水桶和哪個水桶相匹配。這樣的話全部數(shù)據(jù)加在一起用時不到0.2s(請自行思考為什么這么做可行)。

            以下是我的代碼:

            #include<stdio.h>
            #define MAXINT 200000000
            long n,ans=MAXINT,a[20][20]={0},used[20]={0};
            void dfs(long dep,long now)
            {
                
            long i,j;
                
            if(dep>n)
                
            {
                   
            if(now<ans) ans=now;
                   
            return;
                }

                
            if(used[dep])
                
            {
                   dfs(dep
            +1,now);
                   
            return;
                }

                used[dep]
            =1;
                
            for(i=dep+1;i<=n;i++)
                  
            if(!used[i]&&a[dep][i]!=0&&now+a[dep][i]<ans)
                  
            {
                     used[i]
            =1;
                     dfs(dep
            +1,now+a[dep][i]);
                     used[i]
            =0;
                  }

                used[dep]
            =0;
            }

            int main()
            {
                FILE 
            *fin,*fout;
                
            long i,j,k,min,t1,t2;
                fin
            =fopen("spring.in","r");
                fscanf(fin,
            "%ld",&n);
                
            for(i=1;i<=n;i++)
                  
            for(j=1;j<=n;j++)
                    fscanf(fin,
            "%ld",&a[i][j]);
                fclose(fin);
            // Read In
                dfs(1,0);
                fout
            =fopen("spring.out","w");
                fprintf(fout,
            "%ld\n",ans);
                fclose(fout);
            return 0;
            }

            posted on 2010-01-06 20:27 lee1r 閱讀(625) 評論(0)  編輯 收藏 引用 所屬分類: 題目分類:搜索
            亚洲国产成人精品91久久久| 精品久久久久久国产免费了| 亚洲中文字幕伊人久久无码| 久久亚洲AV成人无码国产| 国产免费久久精品丫丫| 久久综合给合久久狠狠狠97色| 波多野结衣AV无码久久一区| 亚洲欧美另类日本久久国产真实乱对白 | 久久天天婷婷五月俺也去| 97超级碰碰碰碰久久久久| 精品熟女少妇av免费久久| 国产成人精品综合久久久久| 国产精品久久久久天天影视| 久久91精品久久91综合| 99久久婷婷免费国产综合精品| 久久精品成人| 性高朝久久久久久久久久| 久久国产乱子伦免费精品| av午夜福利一片免费看久久| 热综合一本伊人久久精品| 欧美伊香蕉久久综合类网站| 国产精品欧美久久久久天天影视| 狠狠综合久久AV一区二区三区| 久久国产成人| 777久久精品一区二区三区无码| 无码人妻久久一区二区三区免费| 日韩乱码人妻无码中文字幕久久 | 久久99精品久久久久久hb无码| 亚洲精品成人网久久久久久| 日本免费久久久久久久网站| 91视频国产91久久久| 久久久亚洲欧洲日产国码二区| 久久婷婷人人澡人人爽人人爱 | 久久婷婷五月综合97色一本一本 | 久久综合狠狠综合久久激情 | 狠狠色婷婷久久综合频道日韩 | 无码人妻久久一区二区三区 | 久久夜色精品国产亚洲av| 久久青青草视频| 亚洲国产精品无码久久青草 | 国产99精品久久|