• <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>
            posts - 101,  comments - 57,  trackbacks - 0
            problem : http://acm.pku.edu.cn/JudgeOnline/problem?id=1002
            source   :

            #include "stdio.h"
            #include 
            "stdlib.h"
            #include 
            "string.h"

            char telenum[100000][8= {0}

            char change(char m)
            {
                
            char ret = 0;
                
            switch(m)
                
            {
                
            case 'A':
                
            case 'B':
                
            case 'C':
                    ret 
            = '2';
                    
            break;
                
            case 'D':
                
            case 'E':
                
            case 'F':
                    ret 
            = '3';
                    
            break;
                
            case 'G':
                
            case 'H':
                
            case 'I':
                    ret 
            = '4';
                    
            break;
                
            case 'J':
                
            case 'K':
                
            case 'L':
                    ret 
            = '5';
                    
            break;
                
            case 'M':
                
            case 'N':
                
            case 'O':
                    ret 
            = '6';
                    
            break;
                
            case 'P':
                
            case 'R':
                
            case 'S':
                    ret 
            = '7';
                    
            break;
                
            case 'T':
                
            case 'U':
                
            case 'V':
                    ret 
            = '8';
                    
            break;
                
            case 'W':
                
            case 'X':
                
            case 'Y':
                    ret 
            = '9';
                    
            break;
                
            case '-':
                    ret 
            = 0;
                    
            break;
                
            default:
                    ret 
            = m;
                    
            break;
                }

                
            return ret;
            }


            int compare(const void *arg1, const void *arg2)
            {
                
            return strcmp((char *)arg1, (char *)arg2);
            }


            int main()
            {
                unsigned 
            int n;
                unsigned 
            int i, j, k;
                
            int  m;
                
            int  flag;
                
            char tmp;
                
            char memorable[100= {0}

                scanf(
            "%d\n"&n);
                
            //printf("%d\n",n);

                
            for (i = 0; i < n; ++i)
                
            {
                    gets(memorable);
                    
            for (j = 0, k = 0; j < strlen(memorable); ++j)
                    
            {
                        
            if (tmp = change(memorable[j]))
                        
            {
                            telenum[i][k
            ++= tmp;
                        }

                    }

                }


                qsort(telenum, n, 
            8, compare);

                
            for (i = 1, m = 1, flag = 1; i < n; ++i)
                
            {
                    
            if (0 == strcmp(telenum[i], telenum[i - 1]))
                    
            {
                        m
            ++;
                    }

                    
            else
                    
            {
                        
            if (m > 1)
                        
            {
                            printf(
            "%c%c%c-%c%c%c%c %d\n",
                                telenum[i 
            - 1][0],telenum[i - 1][1],telenum[i - 1][2],
                                telenum[i 
            - 1][3],telenum[i - 1][4],telenum[i - 1][5],telenum[i - 1][6], 
                                m);
                            m    
            = 1;
                            flag 
            = 0;
                        }

                    }

                }

                
            if (0 == strcmp(telenum[i - 2], telenum[i - 1]) && m > 1)
                
            {
                    printf(
            "%c%c%c-%c%c%c%c %d\n",
                        telenum[i 
            - 1][0],telenum[i - 1][1],telenum[i - 1][2],
                        telenum[i 
            - 1][3],telenum[i - 1][4],telenum[i - 1][5],telenum[i - 1][6], 
                        m);
                    flag 
            = 0;    
                }


                
            if (flag)
                
            {
                    printf(
            "No duplicates. ");
                }

                
            return 0;
            }
            本題完全是自己的代碼,所以沒(méi)有什么好講的,本來(lái)想看看有沒(méi)有用hash表來(lái)做的。但是后來(lái)發(fā)現(xiàn)還是用數(shù)組來(lái)做簡(jiǎn)單.
            1.一開(kāi)始當(dāng)然的WA,WA得莫名其妙。
            2.看了看,少了printf("No duplicates. "); 加上了最后的數(shù)字處理,還是WA,更加莫名其妙
            3.最后把接受的數(shù)組定義到100,AC了...無(wú)語(yǔ)
            posted on 2008-04-17 02:25 margin 閱讀(490) 評(píng)論(1)  編輯 收藏 引用 所屬分類: C/C++

            FeedBack:
            # re: pku acm 1002
            2010-11-13 11:09 | 如花
            3.最后把接受的數(shù)組定義到100,AC了...無(wú)語(yǔ)

            很受用啊 兄弟 看樣以后這緩沖需要設(shè)的大大大大大一點(diǎn)

            呵呵  回復(fù)  更多評(píng)論
              
            <2009年6月>
            31123456
            78910111213
            14151617181920
            21222324252627
            2829301234
            567891011

            常用鏈接

            留言簿

            隨筆檔案

            文章分類

            文章檔案

            收藏夾

            常去的壇子

            • CVC電腦病毒論壇
            • 很多人說(shuō)我是AV,我告訴他們:別瞧不起人,我們也能創(chuàng)造價(jià)值
            • 安全焦點(diǎn)
            • 黑客聚集的地方,一般是好酒最多的地方...
            • 看雪論壇
            • 國(guó)內(nèi)最強(qiáng)的加密解密論壇,成醉其中經(jīng)常夜不歸宿
            • 驅(qū)動(dòng)開(kāi)發(fā)論壇
            • 厭倦了啤的朋友們,來(lái)我們來(lái)整點(diǎn)白的...痛痛快快的BSOD也好過(guò)隔鞋瘙癢!

            我的朋友

            • Sen的blog
            • IDE方面資深的受害者...經(jīng)常為一個(gè)變量的定義找不著北的痛苦程序員(深表同情)
            • 老羅的blog
            • 良師益友,千年水牛,引擎猛男,分析怪獸,墨鏡酷哥,臺(tái)球高手....

            搜索

            •  

            最新評(píng)論

            国产一区二区三区久久精品| 久久99国产精品久久久| 国产精品嫩草影院久久| 欧美综合天天夜夜久久| 青青久久精品国产免费看 | 日韩AV无码久久一区二区| 亚洲精品白浆高清久久久久久 | 日韩十八禁一区二区久久| 久久精品中文字幕一区| 中文字幕热久久久久久久| 久久精品国产99国产电影网 | 久久久久久无码国产精品中文字幕 | 久久强奷乱码老熟女网站| 72种姿势欧美久久久久大黄蕉| 99久久夜色精品国产网站| 18禁黄久久久AAA片| 91精品国产91久久久久久蜜臀 | 精品久久久噜噜噜久久久| 久久综合久久综合久久| 97久久国产综合精品女不卡| 99久久中文字幕| 波多野结衣中文字幕久久| 久久久久亚洲精品天堂久久久久久| 一本色道久久88—综合亚洲精品| 久久免费小视频| 久久99精品国产麻豆| 久久国产免费直播| 国产免费久久精品99re丫y| 成人a毛片久久免费播放| 人妻无码中文久久久久专区| 日本久久中文字幕| 久久久久亚洲av成人无码电影 | 狠狠干狠狠久久| 久久久无码人妻精品无码| 久久久久久久97| 久久婷婷五月综合97色直播| 欧美一级久久久久久久大片| 精品人妻伦一二三区久久| 激情综合色综合久久综合| 国产L精品国产亚洲区久久| 国产精品久久久久影院色|