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

Welcome to Leon's Blog  
日歷
<2008年7月>
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789
統(tǒng)計(jì)
  • 隨筆 - 30
  • 文章 - 0
  • 評(píng)論 - 51
  • 引用 - 0

導(dǎo)航

常用鏈接

留言簿(4)

隨筆分類(lèi)

隨筆檔案

ACM

搜索

  •  

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

 
       今天早上終于提交成功了!這道題做了有一個(gè)星期多了,老是找不到原因。今天在偶然間發(fā)現(xiàn)了,先將代碼貼出來(lái),還請(qǐng)大家指正!感謝steven和一個(gè)匿名網(wǎng)友的建議,謝謝你們!但是程序運(yùn)行的時(shí)間還是過(guò)長(zhǎng),希望大家能夠幫助修改。

  1#include <stdio.h>
  2#include <string.h>
  3#include <stdlib.h>
  4
  5
  6int result[4];
  7int reNumber, reCount, tie, reMax;        //result是最終客戶(hù)的郵票種類(lèi),reCount是客戶(hù)郵票總個(gè)數(shù),reNumber是客戶(hù)不同郵票的個(gè)數(shù)
  8                                                    
  9int GetNumber(int *stamp, int *customer, int *stampNumber, int *customerNumber)        //獲取郵票 和 客戶(hù)信息。
 10{
 11    int i, n,count[100];    // count在這里起到一個(gè)優(yōu)化的作用。
 12    n = 0;
 13    (*stampNumber) = 0;
 14    memset(count, 0 ,sizeof(int)*100);
 15    while(1)        //收集關(guān)于郵票的面值。
 16    {
 17        if(scanf("%d"&n) == EOF)
 18            return -1;
 19        if(n == 0)
 20            break;
 21        if(count[n]++ < 5)
 22            stamp[(*stampNumber)++= n;
 23    }

 24    //stampNumber--;
 25    (*customerNumber) = 0;
 26    while(1)
 27    {
 28        scanf("%d"&n);        //收集關(guān)于客戶(hù)需要郵票的總面值數(shù)。
 29        if(n == 0)
 30            break;
 31        customer[(*customerNumber)++= n;
 32    }

 33    return 1;
 34}

 35int NotSame(int *number,const int count, int *m,int *stamp)        //求不同一組郵票類(lèi)別的個(gè)數(shù)和郵票的最大面值。
 36{
 37    int i,j, c,s;
 38    c = 0;
 39    *= stamp[number[0]];
 40    for(i = 0; i < count; i++)
 41    {
 42        if*< stamp[number[i]])        //求最大面值的郵票
 43            *= stamp[number[i]];
 44        s = 0;
 45        for(j = 0; j < i; j++)        //求不同面值郵票的個(gè)數(shù)
 46        {
 47            if(number[i] == number [j])
 48            {
 49                s = 1;
 50                break;
 51            }

 52        }

 53        if(0 == s)
 54            c++;
 55    }

 56    return c;
 57}

 58
 59
 60void Divide(int sum, int *number, int *stamp,int n, int *count, int same,int start)
 61{
 62    int i;
 63    int t;
 64    if*count > 4 ) 
 65            return;
 66    else if( sum == 0 && *count <= 4)        //郵票個(gè)數(shù)《=4的時(shí)候且保存在數(shù)組number中的郵票面值=sum的時(shí)候。    
 67    {
 68        same = NotSame(number, *count,&t, stamp);
 69        if( same > reNumber || same == reNumber && reCount > *count || same == reNumber && reCount == *count && reMax < t )//根據(jù)不同的條件來(lái)判斷。
 70        {
 71            reMax = t;
 72            reCount = *count;
 73            reNumber = same;
 74            for(i = 0; i < *count; i++)
 75                result[i] = number[i];
 76            tie = 0;
 77        }

 78        else if(same == reNumber && reCount == *count && reMax == t)//當(dāng)郵票面值的最大值、郵票種類(lèi)數(shù),郵票個(gè)數(shù)相等時(shí)。
 79        {
 80            tie = 1;
 81        }

 82
 83        return;
 84    }

 85    for(i = start; i < n; i++)        //遞歸搜索
 86    {
 87        sum -= stamp[i];
 88        if(sum >= 0)
 89        {
 90            number[(*count)++= i;
 91            Divide(sum, number, stamp, n, count,same,i);
 92            (*count)--;
 93        }

 94        sum += stamp[i];
 95    }
    
 96}

 97
 98
 99int main(int argc, char* argv[])
100{
101    int stamp[100], customer[100];        //stamp保存郵票的面值,customer保存客戶(hù)需要郵票的總面值。
102    int number[5];        //臨時(shí)數(shù)據(jù),記錄滿(mǎn)足條件的臨時(shí)結(jié)果。此前提交一直WA的原因是number分配的空間太小了!
103    int count,stampNumber = -1, customerNumber = -1;//stampNumber是郵票的個(gè)數(shù),customerNumber是客戶(hù)個(gè)數(shù) 
104    int i,j;
105
106    do
107    {    
108        memset(stamp, 0100*sizeof(int));
109        memset(customer, 0100*sizeof(int));
110        memset(number, 0 ,4);
111        if(GetNumber(stamp, customer, &stampNumber, &customerNumber) == -1)
112            break;
113        for(i = 0; i < customerNumber; i++)
114        {
115            reMax = -1;        //對(duì)數(shù)據(jù)初始化。
116            memset(result, 04);
117            reNumber = -1;
118            count=0;
119            tie = 0;
120            Divide(customer[i], number,stamp, stampNumber/*+1*/,&count, -1,0);
121            if(reNumber != -1)        //打印。
122            {
123                if(tie == 0)        //找到滿(mǎn)足條件的結(jié)果。
124                {
125                    printf("%d (%d):", customer[i], reNumber);
126                    for(j = 0; j <  reCount; j++)
127                            printf(" %d",stamp[result[j]]);
128                    printf("\n");
129                }

130                else if( tie == 1)    //存在郵票面值的最大值、郵票種類(lèi)數(shù),郵票個(gè)數(shù)相同的答案
131                {
132                    printf("%d (%d): tie\n",customer[i], reNumber);
133                }

134            }

135            else        //不滿(mǎn)足條件
136            {
137                printf("%d ---- none\n",customer[i]);
138            }

139        }

140    }
while(1);
141    return 0;
142}

posted on 2008-07-01 09:56 Leon916 閱讀(1944) 評(píng)論(4)  編輯 收藏 引用
評(píng)論:

只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


 
Copyright © Leon916 Powered by: 博客園 模板提供:滬江博客
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            一本色道久久88综合日韩精品| 亚洲综合色视频| 一区二区三区毛片| 一本色道久久综合亚洲精品高清| 亚洲激情亚洲| 日韩西西人体444www| 亚洲午夜av电影| 欧美影院成人| 欧美国产另类| 日韩亚洲国产精品| 亚洲欧美乱综合| 久久精品夜色噜噜亚洲a∨| 久久综合色88| 国产精品成人一区二区艾草| 国产亚洲综合在线| 亚洲精品国产精品国自产观看浪潮 | 亚洲福利在线看| 中文无字幕一区二区三区| 午夜久久一区| 欧美岛国激情| 亚洲女人av| 欧美激情女人20p| 国产日韩一区在线| 99精品福利视频| 久久久福利视频| 亚洲美女网站| 麻豆av福利av久久av| 国产精品美女久久久浪潮软件| 伊人男人综合视频网| 午夜精品一区二区三区电影天堂 | 亚洲国产午夜| 午夜精彩视频在线观看不卡 | 久久九九全国免费精品观看| 欧美日韩播放| 亚洲国产精品久久| 久久久福利视频| 亚洲永久免费视频| 欧美日韩国产综合视频在线观看中文 | 国产女同一区二区| 亚洲欧美第一页| 欧美不卡在线视频| 亚洲天堂免费在线观看视频| 欧美成人a∨高清免费观看| 国产欧美一区二区三区在线看蜜臀 | 亚洲午夜精品久久| 欧美激情一区二区三区在线视频 | 亚洲视频一区二区| 欧美xx视频| 久久久伊人欧美| 国产亚洲欧洲| 久久久综合激的五月天| 亚洲欧美国产另类| 国产伦精品一区二区三区免费| 亚洲影音一区| 一区二区欧美激情| 欧美日韩一区二区三区视频| 亚洲久久一区二区| 亚洲电影在线| 免费亚洲一区| 日韩视频中文字幕| 亚洲日本欧美| 欧美日韩午夜| 午夜精品久久久久久久| 亚洲欧美国产精品桃花| 国产嫩草影院久久久久| 久久精品人人做人人爽电影蜜月| 亚洲综合清纯丝袜自拍| 国产一区日韩一区| 欧美大胆a视频| 欧美激情视频免费观看| 亚洲网站视频| 亚洲欧美日韩综合| 极品少妇一区二区三区| 欧美国产日产韩国视频| 欧美片第一页| 欧美一区二区三区免费大片| 久久精品理论片| 亚洲欧洲日本mm| 一区二区三区国产盗摄| 国产亚洲成av人在线观看导航| 久久久久久亚洲精品不卡4k岛国| 久久精品论坛| 一本综合久久| 欧美一区二区三区久久精品| 亚洲国产精品一区二区三区 | 裸体歌舞表演一区二区| 99这里有精品| 欧美一区二区黄色| 亚洲精品久久嫩草网站秘色 | 久久久国产91| 午夜精品视频在线观看| 尹人成人综合网| 亚洲成色999久久网站| 欧美私人网站| 久久天天狠狠| 欧美精品一区二区精品网| 午夜精品短视频| 欧美成人a∨高清免费观看| 亚洲欧美视频一区二区三区| 老色鬼精品视频在线观看播放| 9l视频自拍蝌蚪9l视频成人 | 欧美黄色小视频| 欧美在线网站| 欧美日韩国产免费| 久久艳片www.17c.com| 欧美精品激情blacked18| 久久久999成人| 欧美三级在线视频| 欧美激情成人在线| 国产午夜精品一区二区三区视频 | 麻豆精品一区二区av白丝在线| 亚洲私人影院| 欧美成人免费在线| 久久夜色精品国产噜噜av| 欧美日韩一视频区二区| 欧美91精品| 国内精品久久久久影院优| 亚洲午夜一二三区视频| 日韩视频在线免费| 久久人人97超碰国产公开结果 | 欧美一级理论片| 在线亚洲免费| 欧美a一区二区| 久久午夜精品一区二区| 国产精品高清在线观看| 亚洲精品一区二区三区不| 亚洲成人自拍视频| 午夜国产精品视频| 午夜精品影院| 国产精品vvv| 亚洲精品免费在线| 亚洲另类在线一区| 欧美国产先锋| 亚洲第一福利在线观看| 国内不卡一区二区三区| 欧美永久精品| 久久精品视频免费| 国产揄拍国内精品对白| 久久久国产一区二区| 久久精品理论片| 国产精品久久久爽爽爽麻豆色哟哟| 亚洲激情中文1区| 亚洲黄网站黄| 欧美va天堂va视频va在线| 免费视频一区| 亚洲每日更新| 欧美日韩高清在线一区| 亚洲久色影视| 国产精品美女www爽爽爽| 欧美另类一区二区三区| 91久久精品国产91久久性色tv | 国产网站欧美日韩免费精品在线观看 | 一本久久综合| 欧美三级第一页| 亚洲视频一区| 久久国产精品99国产精| 激情丁香综合| 免费日韩av片| 亚洲视频第一页| 久久久久久97三级| 亚洲第一二三四五区| 欧美国产三区| 亚洲自拍电影| 免费成人av在线| 在线亚洲观看| 精品成人久久| 欧美日韩一区二| 亚洲欧美另类综合偷拍| 欧美h视频在线| 一区二区三区高清在线| 国产欧美日韩综合一区在线观看| 久久综合九色九九| 亚洲免费成人av| 欧美在线观看一区二区| 136国产福利精品导航| 欧美日韩国产免费| 久久成人一区| 亚洲精品网址在线观看| 久久夜精品va视频免费观看| 夜夜嗨av一区二区三区| 国产婷婷97碰碰久久人人蜜臀| 美国十次成人| 亚洲欧美日韩精品综合在线观看| 免费中文日韩| 欧美一区二区免费视频| 日韩网站在线观看| 国产亚洲精品久| 欧美日韩一区二| 美女91精品| 香蕉亚洲视频| 亚洲欧美乱综合| 亚洲啪啪91| 久久久亚洲国产美女国产盗摄| 一区二区三区精密机械公司| 黄色一区二区在线| 国产精品一区二区久久久久| 欧美连裤袜在线视频| 久久久久久久久综合| 午夜精品偷拍| 亚洲一区二区三区四区视频|