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

posts - 195,  comments - 30,  trackbacks - 0
Sum It Up
Status In/Out TIME Limit MEMORY Limit Submit Times Solved Users JUDGE TYPE
stdin/stdout 3s 8192K 424 182 Standard

Given a specifie d total t and a list of n integers, find all distinct sums using numbers from the list that add up to t. For example, if t = 4, n = 6, and the list is [4, 3, 2, 2, 1, 1], then there are four different sums that equal 4: 4, 3+1, 2+2, and 2+1+1. (A number can be used within a sum as many times as it appears in the list, and a single number counts as a sum.) Your job is to solve this problem in general.

Input

The input file will contain one or more test cases, one per line. Each test case contains t, the total, followed by n, the number of integers in the list, followed by n integers . If n = 0 it signals the end of the input; otherwise, t will be a positive integer less than 1000, n will be an integer between 1 and 12 (inclusive), and will be positive integers less than 100. All numbers will be separated by exactly one space. The numbers in each list appear in nonincreasing order, and there may be repetitions.

Output

For each test case, first output a line containing `Sums of ', the total, and a colon. Then output each sum, one per line; if there are no sums, output the line `NONE'. The numbers within each sum must appear in nonincreasing order. A number may be repeated in the sum as many times as it was repeated in the original list. The sums themselves must be sorted in decreasing order based on the numbers appearing in the sum. In other words, the sums must be sorted by their first number; sums with the same first number must be sorted by their second number; sums with the same first two numbers must be sorted by their third number; and so on. Within each test case, all sums must be distinct; the same sum cannot appear twice.

Sample Input

4 6 4 3 2 2 1 1
5 3 2 1 1
400 12 50 50 50 50 50 50 25 25 25 25 25 25
0 0

Sample Output

Sums of 4:
4
3+1
2+2
2+1+1
Sums of 5:
NONE
Sums of 400:
50+50+50+50+50+50+25+25+25+25
50+50+50+50+50+25+25+25+25+25+25

#include<iostream>
#include
<cstdlib>
#include
<memory>
using namespace std;
int mount;
int l;
int a[12][2];
int mark;
  
void output()
  {
    mark
++;   
    
int temp[12];   
    
int flag=0;
    
for(int i=0;i<mount;i++)
    {  
     
if(a[i][1])
    {
      
if(flag==0)
      flag
++;
      
else
      cout
<<"+";
     cout
<<a[i][0];
     }                          
    }          
     cout
<<endl;            
  }
  
void dfs(int sum,int nowv,int pre)
  {
       
int value;
       
if(nowv==sum)
       {
          output();         
       }
       
else
       {
           
for(int j=pre+1;j<mount;j++)
           {
             value
=a[j][0];      
             
if(nowv+value<=sum&&value!=l)
             { 
             a[j][
1]=1;                                                       
             dfs(sum,nowv
+value,j);
             a[j][
1]=0;
             }   
           }
       }
       
if(pre!=-1)
       l
=a[pre][0];
  }
  
int main()
  {
  
//freopen("s.txt","r",stdin);
  
//freopen("key.txt","w",stdout);
  int sum,i,j;
  cin
>>sum>>mount;
  
while(sum!=0)
  {           
    
for(i=0;i<mount;i++)
    {
       cin
>>a[i][0];
       a[i][
1]=0;      
    }
    
    mark
=0;
    l
=0;
    cout
<<"Sums of "<<sum<<":"<<endl;
    dfs(sum,
0,-1);
    
if(mark==0)
    cout
<<"NONE"<<endl;         
    cin
>>sum>>mount;         
  }
  
//system("PAUSE");
  return 0;
  }

 

難點(diǎn):1,有序遞減,這個(gè)好處理,只需在向前推時(shí)dfs(i)for(int j=i+1...)即可
            2,去掉無(wú)效的重復(fù)搜索,這個(gè)煩一點(diǎn),比如和為11時(shí),序列為6,6,6,2,2,2,1,6+2+2+1顯然是可以的,但是6+6不可以。6+6+6更不可以
我們可以這樣想,如果順著往前推是,如果不超過(guò)范圍,比如6+2+取后一個(gè)數(shù)時(shí),2可以取,但是6+6,超過(guò)11,要回溯的時(shí)候,記錄下此時(shí)的6,用下面的代碼

if(pre!=-1)
       l=a[pre][0];

在比較if(nowv+value<=sum&&value!=l)此時(shí)不符合,下一個(gè)6取不到了!避免了重復(fù)。
posted on 2009-05-14 16:32 luis 閱讀(478) 評(píng)論(0)  編輯 收藏 引用 所屬分類(lèi): 搜索給我啟發(fā)題
<2009年7月>
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678

常用鏈接

留言簿(3)

隨筆分類(lèi)

隨筆檔案

文章分類(lèi)

文章檔案

友情鏈接

搜索

  •  

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            国产精品福利片| 亚洲校园激情| 看片网站欧美日韩| 亚洲永久精品国产| 亚洲第一色中文字幕| 亚洲男女自偷自拍| 亚洲手机在线| 亚洲久久一区| 亚洲国产天堂久久国产91| 国产一区二区三区精品久久久| 欧美激情小视频| 欧美 亚欧 日韩视频在线| 久久精品国产在热久久| 午夜精品久久久久久久| 亚洲一区二区视频| 亚洲已满18点击进入久久| 一区二区电影免费观看| 亚洲黄色小视频| 亚洲国产精品成人久久综合一区| 欧美**人妖| 欧美一区二区日韩一区二区| 亚洲视频一区在线| 国产精品99久久不卡二区| 亚洲乱码国产乱码精品精可以看| 精品99一区二区| 欧美日韩亚洲一区二| 欧美成人日本| 欧美日韩中文在线| 国产精品成人av性教育| 国产酒店精品激情| 国模精品一区二区三区| 亚洲福利专区| 一区二区三区视频在线观看| 亚洲性感美女99在线| 午夜免费日韩视频| 免费成人av在线看| 亚洲精品久久久一区二区三区| 亚洲三级免费电影| 午夜精品美女自拍福到在线| 日韩视频不卡中文| 翔田千里一区二区| 欧美成人黑人xx视频免费观看| 欧美精品大片| 国产日本欧美一区二区三区| 含羞草久久爱69一区| 日韩视频免费观看高清完整版| 在线综合视频| 久久久99国产精品免费| 欧美成年人视频网站| 99国产精品久久久| 欧美中文日韩| 欧美色综合网| 永久免费毛片在线播放不卡| 9i看片成人免费高清| 亚洲一区免费| 久久精品主播| 国产精品igao视频网网址不卡日韩| 国产日韩欧美精品在线| 亚洲另类黄色| 久久综合电影| 亚洲一区精彩视频| 亚洲欧美成人一区二区三区| 欧美极品欧美精品欧美视频| 国产婷婷成人久久av免费高清| 亚洲精选久久| 欧美中文字幕久久| 日韩一级片网址| 免播放器亚洲一区| 国产午夜久久| 亚洲精品1区| 另类尿喷潮videofree| 亚洲五月六月| 欧美三级日本三级少妇99| 亚洲国产欧美在线| 久久人人97超碰国产公开结果| 中国成人在线视频| 欧美精品二区| 亚洲国产日韩欧美在线动漫| 香蕉成人伊视频在线观看| 亚洲精品免费在线播放| 久久久久中文| 黑人巨大精品欧美一区二区| 午夜久久一区| 亚洲一区二区三区在线看| 欧美视频在线播放| 亚洲天堂久久| 亚洲自拍电影| 国产欧美日韩精品在线| 亚洲新中文字幕| 亚洲一级二级| 国产伦精品一区二区三区免费 | 国产精品久久久爽爽爽麻豆色哟哟| 影视先锋久久| 欧美成黄导航| 亚洲视频999| 欧美一区二区三区免费观看| 亚洲国产精品久久久久秋霞不卡| 日韩网站在线看片你懂的| 国产伦精品一区二区三区在线观看 | 久久综合色88| 一本色道久久综合精品竹菊| 宅男精品导航| 中国成人亚色综合网站| 欧美va亚洲va日韩∨a综合色| 国产日韩免费| 牛牛影视久久网| 国产精品sss| 另类av导航| 欧美婷婷六月丁香综合色| 久久久精品国产一区二区三区| 欧美xxxx在线观看| 欧美在线视频全部完| 欧美不卡在线视频| 久久亚洲免费| 国产精品欧美日韩久久| 亚洲高清不卡av| 国产精品嫩草久久久久| 亚洲电影免费观看高清完整版在线观看 | 亚洲午夜一区二区三区| 亚洲国产日韩一级| 久久精品道一区二区三区| 一本一本久久a久久精品综合麻豆| 欧美在线高清视频| 欧美一级专区免费大片| 欧美日本精品一区二区三区| 欧美成人精品h版在线观看| 国产日韩欧美视频在线| 99re8这里有精品热视频免费| 亚洲激情av在线| 久久全球大尺度高清视频| 久久精品国产精品亚洲| 国产乱码精品一区二区三区不卡 | 久久婷婷国产综合尤物精品| 欧美一区二区视频在线观看| 欧美视频一区二区三区…| 亚洲人成网站精品片在线观看| 一区二区亚洲| 久久精品视频在线播放| 久久精品国产免费看久久精品| 国产精品视频免费在线观看| 99国产精品国产精品久久| 国产精品99久久久久久www| 欧美日韩一区综合| 亚洲色图综合久久| 性欧美大战久久久久久久久| 欧美三级乱码| 亚洲欧美一区二区三区在线| 欧美一区免费视频| 国产亚洲美州欧州综合国| 香蕉视频成人在线观看| 久久免费精品视频| 曰韩精品一区二区| 免费亚洲电影在线| 亚洲激情在线| 一区二区三区成人精品| 国产精品白丝av嫩草影院| 亚洲综合国产精品| 麻豆精品网站| 99成人在线| 国产精品久久久久久模特| 午夜精品福利在线观看| 另类春色校园亚洲| 亚洲剧情一区二区| 国产精品国产三级国产aⅴ无密码| 亚洲天堂黄色| 国产丝袜美腿一区二区三区| 久久精品国产99| 亚洲国产欧美国产综合一区| 一区二区三区产品免费精品久久75| 欧美日韩精品在线视频| 亚洲一区在线播放| 牛牛精品成人免费视频| 亚洲私人影院在线观看| 国产欧美一区在线| 老司机免费视频久久| 一区二区三区成人精品| 久久综合成人精品亚洲另类欧美| 日韩亚洲欧美高清| 国产亚洲aⅴaaaaaa毛片| 欧美电影在线| 亚洲欧美一区二区激情| 最新69国产成人精品视频免费| 性色一区二区三区| 日韩视频一区二区在线观看 | 欧美v日韩v国产v| 亚洲天堂免费观看| 亚洲国产精品久久久久久女王| 国产精品久久久久久久久动漫| 久久欧美中文字幕| 先锋影音久久| 亚洲免费电影在线观看| 美女视频黄免费的久久| 午夜精品短视频| 亚洲老司机av| 亚洲国产视频a| 精品1区2区3区4区| 国产欧美韩日| 国产精品porn| 欧美日韩在线三区| 欧美久久成人|