Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

被这题的ac人数带了聋子。。。

Posted by yuhailin at 2010-08-17 12:11:47 on Problem 1409
十分是水。。。
#include <iostream>
#include <string>
#include <algorithm>
using namespace std ;
char g[250];
string s ; 
struct Node {
     string word, rep ;
}seq[1000] ; 
int  n, l;
string ret[1000] ; 
void Init() {
     g['a'] = g['b'] = g['c'] = '2' ;
     g['d'] = g['e'] = g['f'] = '3' ;
     g['g'] = g['h'] = g['i'] = '4' ;
     g['j'] = g['k'] = g['l'] = '5' ;
     g['m'] = g['n'] = g['o'] = '6' ;
     g['p'] = g['q'] = g['r'] = g['s'] = '7' ;
     g['t'] = g['u'] = g['v'] = '8' ; 
     g['w'] = g['x'] = g['y'] = g['z'] = '9' ;          
} 
int  cmp(const Node &a, const Node &b) {
     return a.word < b.word ;    
} 
void dfs(int i, int nc) {
     if(i >= l) {
        cout << ret[0] ;
        for(int j = 1 ; j < nc ; j ++) 
           cout << " "<< ret[j] ;
        cout << "." << endl ;       
        return ;   
     }          
     int l1 ; 
     string tmp ; 
     for(int j = 0 ; j < n ; j ++) {
         l1 = seq[j].word.length() ;
         tmp = s.substr(i,l1) ;             
         if( seq[j].rep == tmp) {
             ret[nc] = seq[j].word ;
             dfs(i+l1, nc+1) ;        
         } 
     }         
} 
int main()
{
     Init() ;
while(scanf("%d",&n) && n) {
     for(int i = 0 ; i < n ; i ++) {
         cin >> seq[i].word ;
         seq[i].rep = "" ;
         for(int j = 0 ;j < seq[i].word.length() ; j ++) 
             seq[i].rep += g[seq[i].word[j]] ;                            
     } 
     cin >> s ;
     l = s.length() ; 
     sort(seq, seq+n, cmp) ; 
     dfs(0, 0) ;
     cout << "--" << endl ; 
    }
    return 0 ;
}

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator