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

            亚洲精品乱码久久久久久自慰| 国产亚洲美女精品久久久2020| 人妻久久久一区二区三区| 亚洲中文字幕久久精品无码喷水| 国产亚洲精品久久久久秋霞| 麻豆亚洲AV永久无码精品久久| 久久精品国产免费| 久久亚洲AV无码西西人体| 久久人做人爽一区二区三区 | 国产一区二区三精品久久久无广告| 久久99国产精品成人欧美| 久久人做人爽一区二区三区| 国产亚洲婷婷香蕉久久精品| 久久久国产一区二区三区| 久久综合给合久久国产免费| 秋霞久久国产精品电影院| 久久精品免费一区二区| 精品久久久久一区二区三区 | 久久午夜电影网| 久久人人爽人人爽人人片av麻烦| 国产精品久久久久影院色| 久久精品国产亚洲AV香蕉| 久久综合久久综合九色| 日产精品99久久久久久| 九九精品久久久久久噜噜| 成人国内精品久久久久影院VR| 精品无码久久久久国产动漫3d| 国内精品伊人久久久久网站| 99久久国语露脸精品国产| 性欧美丰满熟妇XXXX性久久久| 久久久人妻精品无码一区| 国产L精品国产亚洲区久久| 久久久无码人妻精品无码| 久久丫忘忧草产品| 久久经典免费视频| 日本WV一本一道久久香蕉| 合区精品久久久中文字幕一区| 久久精品无码一区二区app| 亚洲精品高清久久| 99久久国产免费福利| 国内精品伊人久久久久影院对白|