c179640bd8 2013-04-26 kinaba: #include <iostream> c179640bd8 2013-04-26 kinaba: #include <sstream> c179640bd8 2013-04-26 kinaba: #include <iomanip> c179640bd8 2013-04-26 kinaba: #include <vector> c179640bd8 2013-04-26 kinaba: #include <string> c179640bd8 2013-04-26 kinaba: #include <map> c179640bd8 2013-04-26 kinaba: #include <set> c179640bd8 2013-04-26 kinaba: #include <algorithm> c179640bd8 2013-04-26 kinaba: #include <numeric> c179640bd8 2013-04-26 kinaba: #include <iterator> c179640bd8 2013-04-26 kinaba: #include <functional> c179640bd8 2013-04-26 kinaba: #include <complex> c179640bd8 2013-04-26 kinaba: #include <queue> c179640bd8 2013-04-26 kinaba: #include <stack> c179640bd8 2013-04-26 kinaba: #include <cmath> c179640bd8 2013-04-26 kinaba: #include <cassert> c179640bd8 2013-04-26 kinaba: using namespace std; c179640bd8 2013-04-26 kinaba: typedef long long LL; c179640bd8 2013-04-26 kinaba: typedef long double LD; c179640bd8 2013-04-26 kinaba: typedef complex<LD> CMP; c179640bd8 2013-04-26 kinaba: c179640bd8 2013-04-26 kinaba: class ScotlandYard { public: c179640bd8 2013-04-26 kinaba: int maxMoves(vector <string> taxi, vector <string> bus, vector <string> metro) c179640bd8 2013-04-26 kinaba: { c179640bd8 2013-04-26 kinaba: const int N = taxi.size(); c179640bd8 2013-04-26 kinaba: vector<LL> n[3]; c179640bd8 2013-04-26 kinaba: for(int i=0; i<N; ++i) { c179640bd8 2013-04-26 kinaba: LL n0=0, n1=0, n2=0; c179640bd8 2013-04-26 kinaba: for(int k=0; k<N; ++k) { c179640bd8 2013-04-26 kinaba: if(taxi[i][k]=='Y') c179640bd8 2013-04-26 kinaba: n0 |= 1LL << k; c179640bd8 2013-04-26 kinaba: if(bus[i][k]=='Y') c179640bd8 2013-04-26 kinaba: n1 |= 1LL << k; c179640bd8 2013-04-26 kinaba: if(metro[i][k]=='Y') c179640bd8 2013-04-26 kinaba: n2 |= 1LL << k; c179640bd8 2013-04-26 kinaba: } c179640bd8 2013-04-26 kinaba: n[0].push_back(n0); c179640bd8 2013-04-26 kinaba: n[1].push_back(n1); c179640bd8 2013-04-26 kinaba: n[2].push_back(n2); c179640bd8 2013-04-26 kinaba: } c179640bd8 2013-04-26 kinaba: c179640bd8 2013-04-26 kinaba: set<LL> vis; c179640bd8 2013-04-26 kinaba: try { c179640bd8 2013-04-26 kinaba: return rec((1LL<<N)-1, n, vis); c179640bd8 2013-04-26 kinaba: } catch(...) { c179640bd8 2013-04-26 kinaba: return -1; c179640bd8 2013-04-26 kinaba: } c179640bd8 2013-04-26 kinaba: } c179640bd8 2013-04-26 kinaba: c179640bd8 2013-04-26 kinaba: int rec(LL cur, const vector<LL> n_tbl[3], set<LL>& vis) c179640bd8 2013-04-26 kinaba: { c179640bd8 2013-04-26 kinaba: if((cur & (cur-1)) == 0) c179640bd8 2013-04-26 kinaba: return 0; c179640bd8 2013-04-26 kinaba: if(!vis.insert(cur).second) c179640bd8 2013-04-26 kinaba: throw "infinite!"; c179640bd8 2013-04-26 kinaba: c179640bd8 2013-04-26 kinaba: LL next[] = {0,0,0}; c179640bd8 2013-04-26 kinaba: for(int i=0; (1LL<<i)<=cur; ++i) c179640bd8 2013-04-26 kinaba: if(cur & (1LL<<i)) { c179640bd8 2013-04-26 kinaba: next[0] |= n_tbl[0][i]; c179640bd8 2013-04-26 kinaba: next[1] |= n_tbl[1][i]; c179640bd8 2013-04-26 kinaba: next[2] |= n_tbl[2][i]; c179640bd8 2013-04-26 kinaba: } c179640bd8 2013-04-26 kinaba: int r0 = next[0] ? rec(next[0], n_tbl, vis)+1 : 0; c179640bd8 2013-04-26 kinaba: int r1 = next[1] ? rec(next[1], n_tbl, vis)+1 : 0; c179640bd8 2013-04-26 kinaba: int r2 = next[2] ? rec(next[2], n_tbl, vis)+1 : 0; c179640bd8 2013-04-26 kinaba: vis.erase(cur); c179640bd8 2013-04-26 kinaba: return max(r0, max(r1, r2)); c179640bd8 2013-04-26 kinaba: } c179640bd8 2013-04-26 kinaba: }; c179640bd8 2013-04-26 kinaba: c179640bd8 2013-04-26 kinaba: // BEGIN CUT HERE c179640bd8 2013-04-26 kinaba: #include <ctime> c179640bd8 2013-04-26 kinaba: double start_time; string timer() c179640bd8 2013-04-26 kinaba: { ostringstream os; os << " (" << int((clock()-start_time)/CLOCKS_PER_SEC*1000) << " msec)"; return os.str(); } c179640bd8 2013-04-26 kinaba: template<typename T> ostream& operator<<(ostream& os, const vector<T>& v) c179640bd8 2013-04-26 kinaba: { os << "{ "; c179640bd8 2013-04-26 kinaba: for(typename vector<T>::const_iterator it=v.begin(); it!=v.end(); ++it) c179640bd8 2013-04-26 kinaba: os << '\"' << *it << '\"' << (it+1==v.end() ? "" : ", "); os << " }"; return os; } c179640bd8 2013-04-26 kinaba: void verify_case(const int& Expected, const int& Received) { c179640bd8 2013-04-26 kinaba: bool ok = (Expected == Received); c179640bd8 2013-04-26 kinaba: if(ok) cerr << "PASSED" << timer() << endl; else { cerr << "FAILED" << timer() << endl; c179640bd8 2013-04-26 kinaba: cerr << "\to: \"" << Expected << '\"' << endl << "\tx: \"" << Received << '\"' << endl; } } c179640bd8 2013-04-26 kinaba: #define CASE(N) {cerr << "Test Case #" << N << "..." << flush; start_time=clock(); c179640bd8 2013-04-26 kinaba: #define END verify_case(_, ScotlandYard().maxMoves(taxi, bus, metro));} c179640bd8 2013-04-26 kinaba: int main(){ c179640bd8 2013-04-26 kinaba: c179640bd8 2013-04-26 kinaba: CASE(0) c179640bd8 2013-04-26 kinaba: string taxi_[] = {"NYN", c179640bd8 2013-04-26 kinaba: "NNY", c179640bd8 2013-04-26 kinaba: "NNN"}; c179640bd8 2013-04-26 kinaba: vector <string> taxi(taxi_, taxi_+sizeof(taxi_)/sizeof(*taxi_)); c179640bd8 2013-04-26 kinaba: string bus_[] = {"NNN", c179640bd8 2013-04-26 kinaba: "NNN", c179640bd8 2013-04-26 kinaba: "NNN"}; c179640bd8 2013-04-26 kinaba: vector <string> bus(bus_, bus_+sizeof(bus_)/sizeof(*bus_)); c179640bd8 2013-04-26 kinaba: string metro_[] = {"NNN", c179640bd8 2013-04-26 kinaba: "NNN", c179640bd8 2013-04-26 kinaba: "NNN"}; c179640bd8 2013-04-26 kinaba: vector <string> metro(metro_, metro_+sizeof(metro_)/sizeof(*metro_)); c179640bd8 2013-04-26 kinaba: int _ = 2; c179640bd8 2013-04-26 kinaba: END c179640bd8 2013-04-26 kinaba: CASE(1) c179640bd8 2013-04-26 kinaba: string taxi_[] = {"NYY", c179640bd8 2013-04-26 kinaba: "NNN", c179640bd8 2013-04-26 kinaba: "NNN"}; c179640bd8 2013-04-26 kinaba: vector <string> taxi(taxi_, taxi_+sizeof(taxi_)/sizeof(*taxi_)); c179640bd8 2013-04-26 kinaba: string bus_[] = {"NNN", c179640bd8 2013-04-26 kinaba: "NNN", c179640bd8 2013-04-26 kinaba: "NNN"}; c179640bd8 2013-04-26 kinaba: vector <string> bus(bus_, bus_+sizeof(bus_)/sizeof(*bus_)); c179640bd8 2013-04-26 kinaba: string metro_[] = {"NNN", c179640bd8 2013-04-26 kinaba: "NNN", c179640bd8 2013-04-26 kinaba: "NNN"}; c179640bd8 2013-04-26 kinaba: vector <string> metro(metro_, metro_+sizeof(metro_)/sizeof(*metro_)); c179640bd8 2013-04-26 kinaba: int _ = 1; c179640bd8 2013-04-26 kinaba: END c179640bd8 2013-04-26 kinaba: CASE(2) c179640bd8 2013-04-26 kinaba: string taxi_[] = {"NYYY", c179640bd8 2013-04-26 kinaba: "YNYY", c179640bd8 2013-04-26 kinaba: "YYNY", c179640bd8 2013-04-26 kinaba: "YYYN"}; c179640bd8 2013-04-26 kinaba: vector <string> taxi(taxi_, taxi_+sizeof(taxi_)/sizeof(*taxi_)); c179640bd8 2013-04-26 kinaba: string bus_[] = {"NNNN", c179640bd8 2013-04-26 kinaba: "NNNN", c179640bd8 2013-04-26 kinaba: "NNNN", c179640bd8 2013-04-26 kinaba: "NNNN"}; c179640bd8 2013-04-26 kinaba: vector <string> bus(bus_, bus_+sizeof(bus_)/sizeof(*bus_)); c179640bd8 2013-04-26 kinaba: string metro_[] = {"NNNN", c179640bd8 2013-04-26 kinaba: "NNNN", c179640bd8 2013-04-26 kinaba: "NNNN", c179640bd8 2013-04-26 kinaba: "NNNN"}; c179640bd8 2013-04-26 kinaba: vector <string> metro(metro_, metro_+sizeof(metro_)/sizeof(*metro_)); c179640bd8 2013-04-26 kinaba: int _ = -1; c179640bd8 2013-04-26 kinaba: END c179640bd8 2013-04-26 kinaba: CASE(3) c179640bd8 2013-04-26 kinaba: string taxi_[] = {"NNY", c179640bd8 2013-04-26 kinaba: "NNY", c179640bd8 2013-04-26 kinaba: "NNN"}; c179640bd8 2013-04-26 kinaba: vector <string> taxi(taxi_, taxi_+sizeof(taxi_)/sizeof(*taxi_)); c179640bd8 2013-04-26 kinaba: string bus_[] = {"NYN", c179640bd8 2013-04-26 kinaba: "NNY", c179640bd8 2013-04-26 kinaba: "NNN"}; c179640bd8 2013-04-26 kinaba: vector <string> bus(bus_, bus_+sizeof(bus_)/sizeof(*bus_)); c179640bd8 2013-04-26 kinaba: string metro_[] = {"NNN", c179640bd8 2013-04-26 kinaba: "NNN", c179640bd8 2013-04-26 kinaba: "YNN"}; c179640bd8 2013-04-26 kinaba: vector <string> metro(metro_, metro_+sizeof(metro_)/sizeof(*metro_)); c179640bd8 2013-04-26 kinaba: int _ = 2; c179640bd8 2013-04-26 kinaba: END c179640bd8 2013-04-26 kinaba: CASE(4) c179640bd8 2013-04-26 kinaba: string taxi_[] = {"NNN", c179640bd8 2013-04-26 kinaba: "YNY", c179640bd8 2013-04-26 kinaba: "NNN"}; c179640bd8 2013-04-26 kinaba: vector <string> taxi(taxi_, taxi_+sizeof(taxi_)/sizeof(*taxi_)); c179640bd8 2013-04-26 kinaba: string bus_[] = {"NNN", c179640bd8 2013-04-26 kinaba: "YNN", c179640bd8 2013-04-26 kinaba: "YNN"}; c179640bd8 2013-04-26 kinaba: vector <string> bus(bus_, bus_+sizeof(bus_)/sizeof(*bus_)); c179640bd8 2013-04-26 kinaba: string metro_[] = {"NNN", c179640bd8 2013-04-26 kinaba: "NNN", c179640bd8 2013-04-26 kinaba: "YYN"}; c179640bd8 2013-04-26 kinaba: vector <string> metro(metro_, metro_+sizeof(metro_)/sizeof(*metro_)); c179640bd8 2013-04-26 kinaba: int _ = -1; c179640bd8 2013-04-26 kinaba: END c179640bd8 2013-04-26 kinaba: CASE(5) c179640bd8 2013-04-26 kinaba: string taxi_[] = {"NNNNYNNNYY", c179640bd8 2013-04-26 kinaba: "NNYNNYYYYY", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "YYNNYYNNNY", c179640bd8 2013-04-26 kinaba: "NNYNNNNNNN", c179640bd8 2013-04-26 kinaba: "YNYNYNNNYN", c179640bd8 2013-04-26 kinaba: "NNYNYNNNYN", c179640bd8 2013-04-26 kinaba: "NNNNNNYNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNYNNN"}; c179640bd8 2013-04-26 kinaba: vector <string> taxi(taxi_, taxi_+sizeof(taxi_)/sizeof(*taxi_)); c179640bd8 2013-04-26 kinaba: string bus_[] = {"NNYNNNYNNY", c179640bd8 2013-04-26 kinaba: "YNYNNYYNYY", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "YNYNNYNYNY", c179640bd8 2013-04-26 kinaba: "NNYNNNNNYN", c179640bd8 2013-04-26 kinaba: "YNYNYNYNYN", c179640bd8 2013-04-26 kinaba: "NNYNNNNNNY", c179640bd8 2013-04-26 kinaba: "YNYNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNYNYNNNNN"}; c179640bd8 2013-04-26 kinaba: vector <string> bus(bus_, bus_+sizeof(bus_)/sizeof(*bus_)); c179640bd8 2013-04-26 kinaba: string metro_[] = {"NNNNNNNYNN", c179640bd8 2013-04-26 kinaba: "YNYNNNNNYN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NYNNYNNNYY", c179640bd8 2013-04-26 kinaba: "NNYNNNNNNN", c179640bd8 2013-04-26 kinaba: "YNYNNNNNYY", c179640bd8 2013-04-26 kinaba: "NNNNYNNNYN", c179640bd8 2013-04-26 kinaba: "NNYNNNYNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNY", c179640bd8 2013-04-26 kinaba: "NNYNYNNNNN"}; c179640bd8 2013-04-26 kinaba: vector <string> metro(metro_, metro_+sizeof(metro_)/sizeof(*metro_)); c179640bd8 2013-04-26 kinaba: int _ = 21; c179640bd8 2013-04-26 kinaba: END c179640bd8 2013-04-26 kinaba: CASE(6) c179640bd8 2013-04-26 kinaba: string taxi_[] = { c179640bd8 2013-04-26 kinaba: "NYYNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "YNYNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNYNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNYNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNYNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNYNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNYNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNYNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNYNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNYNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNYNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNYNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNYNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNYNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNYNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNYNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNYNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNYNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNYNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNYNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNYNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNYNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNYNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNYNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNYNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNYNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNYNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNYN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNY", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: }; c179640bd8 2013-04-26 kinaba: vector <string> taxi(taxi_, taxi_+sizeof(taxi_)/sizeof(*taxi_)); c179640bd8 2013-04-26 kinaba: string bus_[] = { c179640bd8 2013-04-26 kinaba: "NYNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "YNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNYNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNYNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNYNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNYNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNYNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNYNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNYNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNYNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNYNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNYNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNYNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNYNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNYNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNYNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNYNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNYNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNYNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNYNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNYNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNYNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNYNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNYNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNYNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNYNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNYNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNYN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNY", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: }; c179640bd8 2013-04-26 kinaba: vector <string> bus(bus_, bus_+sizeof(bus_)/sizeof(*bus_)); c179640bd8 2013-04-26 kinaba: string metro_[] = { c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: "NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN", c179640bd8 2013-04-26 kinaba: }; c179640bd8 2013-04-26 kinaba: vector <string> metro(metro_, metro_+sizeof(metro_)/sizeof(*metro_)); c179640bd8 2013-04-26 kinaba: int _ = -1; c179640bd8 2013-04-26 kinaba: END c179640bd8 2013-04-26 kinaba: /* c179640bd8 2013-04-26 kinaba: CASE(7) c179640bd8 2013-04-26 kinaba: string taxi_[] = ; c179640bd8 2013-04-26 kinaba: vector <string> taxi(taxi_, taxi_+sizeof(taxi_)/sizeof(*taxi_)); c179640bd8 2013-04-26 kinaba: string bus_[] = ; c179640bd8 2013-04-26 kinaba: vector <string> bus(bus_, bus_+sizeof(bus_)/sizeof(*bus_)); c179640bd8 2013-04-26 kinaba: string metro_[] = ; c179640bd8 2013-04-26 kinaba: vector <string> metro(metro_, metro_+sizeof(metro_)/sizeof(*metro_)); c179640bd8 2013-04-26 kinaba: int _ = ; c179640bd8 2013-04-26 kinaba: END c179640bd8 2013-04-26 kinaba: */ c179640bd8 2013-04-26 kinaba: } c179640bd8 2013-04-26 kinaba: // END CUT HERE