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

posts - 195,  comments - 30,  trackbacks - 0

Tug of War


Status In/Out TIME Limit MEMORY Limit Submit Times Solved Users JUDGE TYPE
stdin/stdout 15s 8192K 479 114 Standard

A tug of war is to be arranged at the local office picnic. For the tug of war, the picnickers must be divided into two teams. Each person must be on one team or the other; the number of people on the two teams must not differ by more than 1; the total weight of the people on each team should be as nearly equal as possible.

The first line of input contains n the number of people at the picnic. n lines follow. The first line gives the weight of person 1; the second the weight of person 2; and so on. Each weight is an integer between 1 and 450. There are at most 100 people at the picnic.

The input may contain several test cases.

Your output will be a single line containing 2 numbers: the total weight of the people on one team, and the total weight of the people on the other team. If these numbers differ, give the lesser first.

Sample Input

3
100
90
200

Output for Sample Input

190 200


利用dp思想 ,n為偶數時求出s(n,n/2),n為奇數時 也是s(2n,n/2),和sum/2最接近的那個。非常經典的思路。
S(k, 1) = {A[i] | 1<= i <= k}
S(k, k) = {A[1]+A[2]+…+A[k]}
S(k, i) = S(k-1, i) U {A[k] + x | x屬于S(k-1, i-1) }
//一下代碼只能用于sum特別小的情況,否則會超時?。。。。。。。。。?!
#include<iostream>
#include<cstdlib>
#define MAX 101
#define min(a,b) ((a)<(b) ? (a) : (b))
using namespace std;

  int main()
  {
  freopen("s.txt","r",stdin);
  freopen("key.txt","w",stdout);
  int num;
  int a[MAX],i,j,k,l,m,NUM;
  bool s[MAX][2500];
  while(cin>>num)
  {
  int sum=0;
    for(i=1;i<=num;i++)
   {
  cin>>a[i];
  sum+=a[i]; 
   }
   if(num%2==0)NUM=num/2;
   else NUM=num/2+1;

    for(i=0;i<=num;i++)
     for(j=0;j<=sum/2;j++)
      s[i][j]=false;//表示取i個物品能否達到重量是j.
     
   s[0][0]=true;
   for(k=1;k<=num;k++)//必須在最外層,元素不能重復
   for(j=min(k,NUM);j>=1; j--)//遞減的結果是使得不會出現在同一層次的互為因果 、、、、、、、、、、、巧妙的實現了課本上的序偶對生成法。
   for(i=a[k];i<=sum/2;i++)
   {
  if(s[j-1][i-a[k]])
  s[j][i]=true;
 }
 
 for(i=sum/2; i>=0; i--) {  
    if(s[NUM][i]) {  
        cout <<i<<" "<<sum-i<<endl;  
        break;  
    }  

  }
  //system("PAUSE");
  return   0;
  }
下一次實現一個序偶生成法。

#include <iostream>
#include <functional>
using namespace std;

int a[101];
bool b[101][45002];

int main(){
// freopen("s.txt","r",stdin);
//  freopen("key.txt","w",stdout);
    int N,M,i,j,k;
    while(scanf("%d",&N)!=EOF){
         memset(b,0,sizeof(b));
         a[0]=M=0;
        for(i=1;i<=N;i++){
             scanf("%d",a+i);
             M+=a[i];
         }
         b[0][0]=1;
        for(k=1;k<=N;k++){
            for(i=1;i<=N/2;i++){
                for(j=M/2;j>=0;j--){
                    if(b[i-1][j]){
                         b[i][j+a[k]]=1;
                     }
                 }
             }
         }
        for(i=M/2,j=M/2+1;i>=0;i--,j++){
            if(b[N/2][i]){
                 printf("%d %d\n",i,M-i);
                break;
             }
            if(b[N/2][j]){
                 printf("%d %d\n",M-j,j);
                break;
             }
         }
     }
    return 0;
}

posted on 2009-07-02 16:05 luis 閱讀(559) 評論(0)  編輯 收藏 引用 所屬分類: 動態規劃 、給我啟發題
<2009年7月>
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678

常用鏈接

留言簿(3)

隨筆分類

隨筆檔案

文章分類

文章檔案

友情鏈接

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久久噜噜噜久久中文字幕色伊伊| 久久天天综合| 欧美激情第3页| 99热免费精品| 亚洲深夜av| 一区二区在线观看视频| 亚洲高清在线精品| 欧美日韩免费区域视频在线观看| 一区二区三区|亚洲午夜| 亚洲性色视频| 亚洲人成在线影院| 亚洲欧美日韩国产中文在线| 国产日韩亚洲欧美精品| 亚洲欧美日韩国产成人| 久久久之久亚州精品露出| 中日韩高清电影网| 久久久久国内| 久久精品72免费观看| 欧美日韩视频一区二区| 免费成人av资源网| 国产亚洲欧美一区在线观看| 9色国产精品| 99国产精品视频免费观看| 久久九九热re6这里有精品| 亚洲一区图片| 欧美日韩国产成人高清视频| 美女爽到呻吟久久久久| 国产精品自拍视频| 亚洲欧美激情精品一区二区| 日韩亚洲在线观看| 欧美成人三级在线| 亚洲国产日韩一区| 亚洲伦理在线免费看| 欧美jizzhd精品欧美巨大免费| 老牛嫩草一区二区三区日本| 国内精品视频在线观看| 欧美在线播放一区| 久久综合狠狠综合久久激情| 韩日在线一区| 嫩草国产精品入口| 日韩午夜在线播放| 午夜精品久久久久| 欧美日韩伦理在线| 亚洲一区日韩| 蜜桃av一区二区| 9l国产精品久久久久麻豆| 国产精品久久久久久久久免费| 欧美一级大片在线免费观看| 欧美成人精品在线观看| 妖精视频成人观看www| 日韩视频免费在线| 久久久精品久久久久| 亚洲美女av在线播放| 国产色爱av资源综合区| 欧美精品一区二区三区很污很色的 | 麻豆乱码国产一区二区三区| 亚洲电影中文字幕| 国产精品伦一区| 久久躁狠狠躁夜夜爽| 亚洲一区免费看| av成人动漫| 亚洲激情视频在线播放| 久久综合给合久久狠狠色| 亚洲嫩草精品久久| 亚洲视频图片小说| 亚洲精品免费看| 91久久精品国产91性色tv| 国产一区二区三区在线免费观看 | 欧美一区二区三区视频免费播放| 亚洲狼人综合| 亚洲日韩欧美视频| 日韩午夜免费视频| 日韩一本二本av| 日韩一级不卡| 中文在线不卡| 欧美一区二区三区的| 亚洲午夜久久久久久久久电影院| 亚洲第一黄网| 免费成人性网站| 久久香蕉国产线看观看网| 亚洲欧美另类国产| 亚洲欧美日韩在线观看a三区| 在线一区观看| 久久精品亚洲一区二区| 国产精品免费福利| 午夜精品久久久久久久白皮肤| 亚洲午夜激情网站| 久久久精品视频成人| 久久综合一区二区三区| 欧美日韩精品高清| 在线电影国产精品| 亚洲图中文字幕| 鲁大师影院一区二区三区| 亚洲日本无吗高清不卡| 欧美在线播放一区| 国产精品成人观看视频免费| 韩国在线一区| 欧美自拍偷拍| 日韩午夜一区| 欧美成人久久| 国产在线视频不卡二| 亚洲在线一区二区三区| 欧美成人免费播放| 亚洲欧美国产高清| 国产精品扒开腿做爽爽爽视频| 一区二区三区中文在线观看| 欧美一区二区三区视频在线| 日韩小视频在线观看| 欧美成人精品激情在线观看| 怡红院精品视频| 久久五月婷婷丁香社区| 久久国产精彩视频| 国产一区在线视频| 久久视频精品在线| 久久精品欧美日韩精品| 国产视频一区二区三区在线观看| 性感少妇一区| 欧美亚洲视频| 精品盗摄一区二区三区| 蜜桃av一区二区| 欧美韩国日本综合| 国产精品99久久久久久宅男| 亚洲美女在线看| 国产精品日韩一区二区三区| 久久精品国产清自在天天线| 久久久久国产精品人| 日韩视频精品| 亚洲欧美精品一区| 久久久久久久久蜜桃| 亚洲日本国产| 亚洲一区二区三区涩| 亚洲国产欧美不卡在线观看 | 亚洲国产专区校园欧美| 欧美久久九九| 久久精品国产99精品国产亚洲性色| 欧美在线免费观看视频| 亚洲毛片播放| 久久精品中文字幕一区二区三区 | 亚洲国产精品久久久| 欧美日韩国产首页| 开心色5月久久精品| 欧美日韩一区二区精品| 毛片基地黄久久久久久天堂| 欧美视频三区在线播放| 欧美韩国在线| 1000部国产精品成人观看| 亚洲一级特黄| 亚洲网站啪啪| 欧美日韩国产高清视频| 欧美激情第六页| 亚洲人成网站精品片在线观看 | 国产欧美在线视频| 亚洲免费av电影| 99re这里只有精品6| 裸体歌舞表演一区二区| 久久人人97超碰人人澡爱香蕉| 国产精品成人一区二区三区夜夜夜| 蜜臀av性久久久久蜜臀aⅴ四虎 | 亚洲第一黄色网| 午夜亚洲激情| 久久亚洲影音av资源网| 国语自产在线不卡| 久久久综合视频| 欧美大片国产精品| 日韩天堂av| 国产精品视频免费在线观看| 亚洲欧美日本日韩| 美玉足脚交一区二区三区图片| 欧美亚洲自偷自偷| 久久福利毛片| 亚洲欧洲一级| 国产精品一区免费视频| 亚洲区欧美区| 欧美精品一区在线发布| 亚洲国产精品成人| 亚洲欧美制服另类日韩| 伊人夜夜躁av伊人久久| 欧美日韩国产综合新一区| 欧美亚洲专区| 艳女tv在线观看国产一区| 久久尤物电影视频在线观看| 亚洲黄色小视频| 国产日韩欧美亚洲一区| 欧美偷拍一区二区| 麻豆91精品| 亚洲男女自偷自拍| 欧美成人一区二区三区片免费| 亚洲在线播放电影| av72成人在线| 亚洲精品久久久久久下一站| 国产视频一区三区| 国产精品爽黄69| 欧美午夜寂寞影院| 欧美激情影院| 农夫在线精品视频免费观看| 欧美一区二区福利在线| 亚洲欧美日韩精品综合在线观看| 99国内精品久久| 亚洲作爱视频| 欧美一级成年大片在线观看|