• <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 - 195,  comments - 30,  trackbacks - 0
            2152: A Special Sorting
            Status In/Out TIME Limit MEMORY Limit Submit Times Solved Users JUDGE TYPE
            stdin/stdout 3s 8192K 356 152 Standard

            Give you a sequence of words, can you sort them in dictionary order?

            eg.

            yes
            accidental
            baby
            accept
            accident
            
            In dictionary order, those words should be printed as the following
            accept
            accident
            accidental
            baby
            yes
            
            But we will make an interesting rule this time. See your keyboard or the picture below:

            there are ONLY 26 letters in lower-case we will use, and we assume that the letter above is bigger than the letter below, and the left is bigger than the right. For example, 'q' is bigger than 'a', 'c' is bigger than 'v'. So the example at the beginning whill be...

            Input and Output

            the input will only contain a sequence of words which is less than 1500. the output should print the sorted words each in a single line.

            Sample Input

            yes
            accidental
            baby
            accept
            accident
            

            Sample Output

            baby
            accident
            accidental
            accept
            yes
            

            水題啊!
            #include<iostream>
            #include<cstdlib>
            #include<string>
            #include<algorithm>
            using namespace std;
            int Map[27];
            struct M{
             char s[30];
            }S[1500];
            char table[26]={'q','w','e','r','t','y','u','i','o','p','a','s','d',
            'f','g','h','j','k','l','z','x','c','v','b','n','m'};
            bool operator<(M a,M b)
            {
             int i=strlen(a.s);
             int j=strlen(b.s);
             if(i<j)
             j=i;
             for(int k=0;k<j;k++)
             {
              if(Map[(a.s[k])-'a']<Map[(b.s)[k]-'a'])
              return false;
              if(Map[(a.s[k])-'a']>Map[(b.s)[k]-'a'])
              return true;
             }
             return i==j;//Èç¹ûabcd,abc,abcd<abc
            }
            void search(char key)
            {
             int i;
            for(i=0;i<26;i++)
            {
             if(key==table[i])
             {
              Map[key-'a']=i;
              break;
             }
            }
            }
              int main()
              {
              freopen("s.txt","r",stdin);  
              freopen("key.txt","w",stdout);
              int i;
              string t;
              memset(S,0,sizeof(S));
              for(i=0;i<26;i++)
              {
              search('a'+i);
              }
              i=0;
              while(!cin.eof())
               { 
             cin.getline(S[i++].s,30);//不能用cin>>s;否則runtime  error
               }
             sort(S,S+i-1);
             for(int j=0;j<i-1;j++)//必須用i-1,最后還有個空行。
             cout<<S[j].s<<endl;
              //system("PAUSE");
              return   0;
              }
            奇怪的是在vc上能用
            string s ;
            while(cin>>s)
            {};
            在dev c++ 上不行。
            后來才發現可以
            string s ;
            while(cin>>s)
            {};
            但是不能加 memset(S,0,sizeof(S));
            posted on 2009-07-18 16:11 luis 閱讀(658) 評論(0)  編輯 收藏 引用 所屬分類: 格式.輸入輸出.數據類型
            <2009年7月>
            2829301234
            567891011
            12131415161718
            19202122232425
            2627282930311
            2345678

            常用鏈接

            留言簿(3)

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            友情鏈接

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            久久国产亚洲高清观看| 久久亚洲精品人成综合网| 日本福利片国产午夜久久| 国产免费久久精品99久久| 精品久久久久一区二区三区| 国产精品成人久久久| 久久永久免费人妻精品下载| 欧洲性大片xxxxx久久久| A级毛片无码久久精品免费| 综合久久精品色| 国产一区二区精品久久凹凸| 亚洲国产成人精品无码久久久久久综合 | 久久99九九国产免费看小说| 久久亚洲春色中文字幕久久久| 成人久久精品一区二区三区 | 91久久九九无码成人网站| 99精品久久精品一区二区| 久久久久久亚洲精品不卡| 999久久久无码国产精品| 久久人搡人人玩人妻精品首页| 亚洲国产精品久久久久婷婷软件| 久久热这里只有精品在线观看| 久久亚洲色一区二区三区| 久久国产精品99精品国产| 久久精品国产99国产精品亚洲| 国产成人香蕉久久久久| 久久香蕉一级毛片| 国产成人精品免费久久久久| 狠狠色婷婷久久一区二区三区 | 久久久精品日本一区二区三区| 少妇高潮惨叫久久久久久| 亚洲国产日韩综合久久精品| 久久九九免费高清视频| 91精品观看91久久久久久| 狠狠狠色丁香婷婷综合久久俺| 国产精品无码久久久久久| 亚洲国产精品无码久久SM| 亚洲愉拍99热成人精品热久久| 思思久久99热只有频精品66| 久久人人青草97香蕉| 久久精品国产亚洲αv忘忧草|