• <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>
            xiaoguozi's Blog
            Pay it forword - 我并不覺的自豪,我所嘗試的事情都失敗了······習(xí)慣原本生活的人不容易改變,就算現(xiàn)狀很糟,他們也很難改變,在過程中,他們還是放棄了······他們一放棄,大家就都是輸家······讓愛傳出去,很困難,也無法預(yù)料,人們需要更細(xì)心的觀察別人,要隨時注意才能保護(hù)別人,因?yàn)樗麄兾幢刂雷约阂裁础ぁぁぁぁ?/span>

            今天寫了下http://acm.pku.edu.cn/JudgeOnline/problem?id=1451
            兩份代碼在vc下ac,用g++交RE...
            如下:

              1 #include <iostream>
              2 #include <algorithm>
              3 #include <string>
              4 #include <vector>
              5 
              6 using namespace std;
              7 
              8 int const NUM=26;
              9 vector< vector<char> >vec;
             10 struct Node
             11 {
             12     string ss;
             13     int pro;
             14     bool operator<(const Node& c)const{
             15         if(pro!=c.pro)return pro>c.pro;
             16         return ss<c.ss;
             17     };
             18     Node(string m="",int p=0):ss(m),pro(p){};
             19 };
             20 class _Trie
             21 {
             22 public:
             23     _Trie():val(0){
             24         for(int i=0;i<NUM;i++)next[i]=NULL;
             25     }
             26     ~_Trie(){
             27         for(int i=0;i<NUM;i++)delete next[i];
             28     }
             29     _Trie* next[NUM];
             30     int val;
             31 };
             32 Node ans[505];
             33 string ss;
             34 void dfs(_Trie* now,int level,string sm)
             35 {
             36     if(ss[level]=='1')return;
             37     string mm=sm;
             38     for(int i=0;i<vec[ss[level]-48].size();i++){
             39         _Trie* p=now->next[vec[ss[level]-48][i]-'A'];
             40         if(p!=NULL){
             41             mm+=(vec[ss[level]-48][i]+32);
             42             if(p->val>ans[level+1].pro&&level+1<505){
             43                 ans[level+1].pro=p->val;
             44                 ans[level+1].ss=mm;
             45             }
             46             else if(p->val==ans[level+1].pro){
             47                 if(ans[level+1].ss>mm){
             48                     ans[level+1].ss=mm;
             49                 }
             50             }
             51             dfs(p,level+1,mm);
             52             mm=sm;
             53         }
             54     }
             55     return;
             56 }
             57 int main()
             58 {
             59     vec.resize(29);
             60     vec[2].push_back('A'),vec[2].push_back('B'),vec[2].push_back('C');
             61     vec[3].push_back('D'),vec[3].push_back('E'),vec[3].push_back('F');
             62     vec[4].push_back('G'),vec[4].push_back('H'),vec[4].push_back('I');
             63     vec[5].push_back('J'),vec[5].push_back('K'),vec[5].push_back('L');
             64     vec[6].push_back('M'),vec[6].push_back('N'),vec[6].push_back('O');
             65     vec[7].push_back('P'),vec[7].push_back('Q'),vec[7].push_back('R'),vec[7].push_back('S');
             66     vec[8].push_back('T'),vec[8].push_back('U'),vec[8].push_back('V');
             67     vec[9].push_back('W'),vec[9].push_back('X'),vec[9].push_back('Y'),vec[9].push_back('Z');
             68     int T;
             69     cin>>T;
             70     for(int r=1;r<=T;r++){
             71         _Trie root;
             72         int n;
             73         cin>>n;
             74         string str;
             75         int pro;
             76         while(n--){
             77             _Trie* point=&root;
             78             cin>>str>>pro;
             79             for(int i=0;i<str.size();++i){        
             80                 if(!point->next[str[i]-'a'])
             81                     point->next[str[i]-'a']=new _Trie;                
             82                 point=point->next[str[i]-'a'];
             83                 point->val+=pro;
             84             }
             85         }
             86         cout<<"Scenario #"<<r<<":\n";
             87         cin>>n;
             88         while(n--){
             89             memset(ans,0,sizeof(ans));
             90             cin>>ss;
             91             int cnt=0;
             92             for(int i=0;i<ss.size();i++){
             93                 if(ss[i]=='1')break;
             94                 else cnt++;
             95             }
             96             _Trie* now=&root;
             97             dfs(now,0,"");
             98             sort(ans+1,ans+cnt+1);
             99             for(int i=0;i<cnt;++i){
            100                 if(ans[i+1].pro!=0)cout<<ans[i+1].ss<<endl;
            101                 else cout<<"MANUALLY"<<endl;
            102             }
            103             cout<<endl;
            104         }    
            105         cout<<endl;
            106     }
            107     return 0;
            108 }
            109 
            經(jīng)過兩個多小時周折,終于在G++下也ac......聰明的你...能否改改...同樣也能在G++下ac...
            ps:絕對是一個挑戰(zhàn)...至少忍耐力會上一個臺階...(我?guī)缀跻驯罎?沒找出錯誤,我在G++下
            1 if(p->val>ans[level+1].pro&&level+1<505){
            2                 ans[level+1].pro=p->val;
            3                 ans[level+1].ss=mm;
            4             }
            5             else if(p->val==ans[level+1].pro){
            6                 if(ans[level+1].ss>mm){
            7                     ans[level+1].ss=mm;
            8                 }
            9             }
            ans[level+1].ss=mm,跳出"程序訪問違例(段異常)",
            改完ac的acmers留個言...^_^,值得挑戰(zhàn)...
            原因分析:是memset時出了問題...不能對本身有構(gòu)造函數(shù)的類或類成員中有構(gòu)造函數(shù)的類成員memset..本例就是
            string出了問題...
            posted on 2008-08-15 16:33 小果子 閱讀(331) 評論(0)  編輯 收藏 引用 所屬分類: 學(xué)習(xí)筆記
            久久精品一区二区| 99国产欧美精品久久久蜜芽| 久久精品成人影院| 国产精品成人无码久久久久久| 国内精品久久久久久久涩爱 | 99久久免费国产特黄| 精品久久久久久久久久中文字幕| 午夜精品久久久久9999高清| 久久综合久久自在自线精品自| 国产精品九九久久免费视频 | 国产精品免费久久久久影院| 久久99精品国产麻豆宅宅| 日韩久久久久中文字幕人妻 | 99久久99久久精品免费看蜜桃| 国产成人精品久久亚洲高清不卡| 无码精品久久久久久人妻中字| 久久99热这里只频精品6| 久久精品国产一区二区三区不卡| 久久国产乱子精品免费女| 国产一区二区三区久久| 青青青伊人色综合久久| 一级做a爱片久久毛片| 欧美午夜A∨大片久久| 久久精品这里只有精99品| 99久久亚洲综合精品成人| 国产精品99久久久久久猫咪| 久久精品国产亚洲av瑜伽| 亚洲欧美日韩久久精品| 国内精品伊人久久久久AV影院| 人妻无码αv中文字幕久久| 少妇无套内谢久久久久| 日韩人妻无码精品久久免费一| 性欧美大战久久久久久久久| 九九精品久久久久久噜噜| 久久九九亚洲精品| 免费精品久久天干天干| 国产AV影片久久久久久| 国产精品毛片久久久久久久| 人人狠狠综合久久亚洲| 国产精品久久久99| 国内精品久久久久久不卡影院 |