File Annotation
Not logged in
1ef2ecff66 2011-08-21        kinaba: #include <iostream>
1ef2ecff66 2011-08-21        kinaba: #include <sstream>
1ef2ecff66 2011-08-21        kinaba: #include <iomanip>
1ef2ecff66 2011-08-21        kinaba: #include <vector>
1ef2ecff66 2011-08-21        kinaba: #include <string>
1ef2ecff66 2011-08-21        kinaba: #include <map>
1ef2ecff66 2011-08-21        kinaba: #include <set>
1ef2ecff66 2011-08-21        kinaba: #include <algorithm>
1ef2ecff66 2011-08-21        kinaba: #include <numeric>
1ef2ecff66 2011-08-21        kinaba: #include <iterator>
1ef2ecff66 2011-08-21        kinaba: #include <functional>
1ef2ecff66 2011-08-21        kinaba: #include <complex>
1ef2ecff66 2011-08-21        kinaba: #include <queue>
1ef2ecff66 2011-08-21        kinaba: #include <stack>
1ef2ecff66 2011-08-21        kinaba: #include <cmath>
1ef2ecff66 2011-08-21        kinaba: #include <cassert>
1ef2ecff66 2011-08-21        kinaba: #include <cstring>
1ef2ecff66 2011-08-21        kinaba: using namespace std;
1ef2ecff66 2011-08-21        kinaba: typedef long long LL;
1ef2ecff66 2011-08-21        kinaba: typedef complex<double> CMP;
1ef2ecff66 2011-08-21        kinaba: 
1ef2ecff66 2011-08-21        kinaba: static const int INF = 0x3fffffff;
1ef2ecff66 2011-08-21        kinaba: LL gcd(LL x, LL y) { while(x) swap(x,y%=x); return y; }
1ef2ecff66 2011-08-21        kinaba: static const int dy[] = {-1,+1,0,0};
1ef2ecff66 2011-08-21        kinaba: static const int dx[] = {0,0,-1,+1};
1ef2ecff66 2011-08-21        kinaba: 
1ef2ecff66 2011-08-21        kinaba: class MeetInTheMaze { public:
1ef2ecff66 2011-08-21        kinaba: 	int H, W;
1ef2ecff66 2011-08-21        kinaba: 	map<char, int> count;
1ef2ecff66 2011-08-21        kinaba: 
1ef2ecff66 2011-08-21        kinaba: 	void setup_maze(vector<string>& maze)
1ef2ecff66 2011-08-21        kinaba: 	{
1ef2ecff66 2011-08-21        kinaba: 		setup_sentinel(maze);
1ef2ecff66 2011-08-21        kinaba: 
1ef2ecff66 2011-08-21        kinaba: 		H = maze.size();
1ef2ecff66 2011-08-21        kinaba: 		W = maze[0].size();
1ef2ecff66 2011-08-21        kinaba: 
1ef2ecff66 2011-08-21        kinaba: 		for(int y=0; y<H; ++y)
1ef2ecff66 2011-08-21        kinaba: 		for(int x=0; x<W; ++x)
1ef2ecff66 2011-08-21        kinaba: 			count[maze[y][x]] ++;
1ef2ecff66 2011-08-21        kinaba: 	}
1ef2ecff66 2011-08-21        kinaba: 
1ef2ecff66 2011-08-21        kinaba: 	void setup_sentinel(vector<string>& maze)
1ef2ecff66 2011-08-21        kinaba: 	{
1ef2ecff66 2011-08-21        kinaba: 		for(int y=0; y<maze.size(); ++y)
1ef2ecff66 2011-08-21        kinaba: 			maze[y] = '#' + maze[y] + '#';
1ef2ecff66 2011-08-21        kinaba: 		maze.insert( maze.begin(), string(maze[0].size(), '#') );
1ef2ecff66 2011-08-21        kinaba: 		maze.insert( maze.end(),   string(maze[0].size(), '#') );
1ef2ecff66 2011-08-21        kinaba: 	}
1ef2ecff66 2011-08-21        kinaba: 
1ef2ecff66 2011-08-21        kinaba: 	string ratio2str(LL si, LL bo)
1ef2ecff66 2011-08-21        kinaba: 	{
1ef2ecff66 2011-08-21        kinaba: 		if( si >= INF )
1ef2ecff66 2011-08-21        kinaba: 			return "";
1ef2ecff66 2011-08-21        kinaba: 		LL g = gcd(si, bo);
1ef2ecff66 2011-08-21        kinaba: 		stringstream ss;
1ef2ecff66 2011-08-21        kinaba: 		ss << si/g << "/" << bo/g;
1ef2ecff66 2011-08-21        kinaba: 		return ss.str();
1ef2ecff66 2011-08-21        kinaba: 	}
1ef2ecff66 2011-08-21        kinaba: 
1ef2ecff66 2011-08-21        kinaba: 	LL dijkstra(const vector< vector<int> >& FD, const vector< vector<int> >& RD, const vector<string>& maze)
1ef2ecff66 2011-08-21        kinaba: 	{
1ef2ecff66 2011-08-21        kinaba: 		typedef pair<int,int>   vert;
1ef2ecff66 2011-08-21        kinaba: 		typedef LL              cost;
1ef2ecff66 2011-08-21        kinaba: 		typedef pair<cost,vert> cvert;
1ef2ecff66 2011-08-21        kinaba: 
1ef2ecff66 2011-08-21        kinaba: 		vector<bool> V(H*W);
1ef2ecff66 2011-08-21        kinaba: 		priority_queue< cvert, vector<cvert>, greater<cvert> > Q;
1ef2ecff66 2011-08-21        kinaba: 		for(int y=0; y<H; ++y)
1ef2ecff66 2011-08-21        kinaba: 		for(int x=0; x<W; ++x)
1ef2ecff66 2011-08-21        kinaba: 			if( maze[y][x] != '#' )
1ef2ecff66 2011-08-21        kinaba: 				Q.push( cvert(FD[y][x]+RD[y][x], make_pair(y,x)) );
1ef2ecff66 2011-08-21        kinaba: 
1ef2ecff66 2011-08-21        kinaba: 		cost total = 0;
1ef2ecff66 2011-08-21        kinaba: 		while( !Q.empty() )
1ef2ecff66 2011-08-21        kinaba: 		{
1ef2ecff66 2011-08-21        kinaba: 			cvert v = Q.top(); Q.pop();
1ef2ecff66 2011-08-21        kinaba: 			cost c = v.first;
1ef2ecff66 2011-08-21        kinaba: 			int y = v.second.first;
1ef2ecff66 2011-08-21        kinaba: 			int x = v.second.second;
1ef2ecff66 2011-08-21        kinaba: 			if( V[y*W+x] )
1ef2ecff66 2011-08-21        kinaba: 				continue;
1ef2ecff66 2011-08-21        kinaba: 			V[y*W+x] = true;
1ef2ecff66 2011-08-21        kinaba: 
1ef2ecff66 2011-08-21        kinaba: 			if( maze[y][x] == 'L' )
1ef2ecff66 2011-08-21        kinaba: 				total += c;
1ef2ecff66 2011-08-21        kinaba: 
1ef2ecff66 2011-08-21        kinaba: 			for(int k=0; k<4; ++k) {
1ef2ecff66 2011-08-21        kinaba: 				int yy = y+dy[k];
1ef2ecff66 2011-08-21        kinaba: 				int xx = x+dx[k];
1ef2ecff66 2011-08-21        kinaba: 				cvert u(c+1, make_pair(yy,xx));
1ef2ecff66 2011-08-21        kinaba: 				if( maze[yy][xx]!='#' && !V[yy*W+xx] )
1ef2ecff66 2011-08-21        kinaba: 					Q.push(u);
1ef2ecff66 2011-08-21        kinaba: 			}
1ef2ecff66 2011-08-21        kinaba: 		}
1ef2ecff66 2011-08-21        kinaba: 		return total;
1ef2ecff66 2011-08-21        kinaba: 	}
1ef2ecff66 2011-08-21        kinaba: 
1ef2ecff66 2011-08-21        kinaba: 	void bfs(vector< vector<int> >& D, vector<string>& m, int y, int x)
1ef2ecff66 2011-08-21        kinaba: 	{
1ef2ecff66 2011-08-21        kinaba: 		vector< pair<int,int> > Q(1, make_pair(y,x));
1ef2ecff66 2011-08-21        kinaba: 		D[y][x] = 0;
1ef2ecff66 2011-08-21        kinaba: 		for(int s=1; !Q.empty(); ++s)
1ef2ecff66 2011-08-21        kinaba: 		{
1ef2ecff66 2011-08-21        kinaba: 			vector< pair<int,int> > Q2;
1ef2ecff66 2011-08-21        kinaba: 			for(int i=0; i<Q.size(); ++i){
1ef2ecff66 2011-08-21        kinaba: 				y = Q[i].first;
1ef2ecff66 2011-08-21        kinaba: 				x = Q[i].second;
1ef2ecff66 2011-08-21        kinaba: 				for(int k=0; k<4; ++k) {
1ef2ecff66 2011-08-21        kinaba: 					int yy = y+dy[k];
1ef2ecff66 2011-08-21        kinaba: 					int xx = x+dx[k];
1ef2ecff66 2011-08-21        kinaba: 					if( m[yy][xx]!='#' && D[yy][xx]==INF )
1ef2ecff66 2011-08-21        kinaba: 						Q2.push_back(make_pair(yy,xx)), D[yy][xx]=s;
1ef2ecff66 2011-08-21        kinaba: 				}
1ef2ecff66 2011-08-21        kinaba: 			}
1ef2ecff66 2011-08-21        kinaba: 			Q.swap(Q2);
1ef2ecff66 2011-08-21        kinaba: 		}
1ef2ecff66 2011-08-21        kinaba: 	}
1ef2ecff66 2011-08-21        kinaba: 
1ef2ecff66 2011-08-21        kinaba: 	string getExpected(vector <string> maze)
1ef2ecff66 2011-08-21        kinaba: 	{
1ef2ecff66 2011-08-21        kinaba: 		setup_maze(maze);
1ef2ecff66 2011-08-21        kinaba: 
1ef2ecff66 2011-08-21        kinaba: 		LL total = 0;
1ef2ecff66 2011-08-21        kinaba: 		for(int fy=0; fy<H; ++fy)
1ef2ecff66 2011-08-21        kinaba: 		for(int fx=0; fx<W; ++fx)
1ef2ecff66 2011-08-21        kinaba: 		if( maze[fy][fx] == 'F' )
1ef2ecff66 2011-08-21        kinaba: 		{
1ef2ecff66 2011-08-21        kinaba: 			// Fill the 2d-map FD with the distance from (fy,fx) in the maze.
1ef2ecff66 2011-08-21        kinaba: 			vector< vector<int> > FD(H, vector<int>(W, INF));
1ef2ecff66 2011-08-21        kinaba: 			bfs(FD, maze, fy, fx);
1ef2ecff66 2011-08-21        kinaba: 			for(int ry=0; ry<H; ++ry)
1ef2ecff66 2011-08-21        kinaba: 			for(int rx=0; rx<W; ++rx)
1ef2ecff66 2011-08-21        kinaba: 			if( maze[ry][rx] == 'R' )
1ef2ecff66 2011-08-21        kinaba: 			{
1ef2ecff66 2011-08-21        kinaba: 				// Fill the 2d-map RD with the distance from (ry,rx) in the maze.
1ef2ecff66 2011-08-21        kinaba: 				vector< vector<int> > RD(H, vector<int>(W, INF));
1ef2ecff66 2011-08-21        kinaba: 				bfs(RD, maze, ry, rx);
1ef2ecff66 2011-08-21        kinaba: 				// Compute the distances of all the cells from the base "FD+RD"
1ef2ecff66 2011-08-21        kinaba: 				total += dijkstra(FD, RD, maze);
1ef2ecff66 2011-08-21        kinaba: 			}
1ef2ecff66 2011-08-21        kinaba: 		}
1ef2ecff66 2011-08-21        kinaba: 		return ratio2str(total, count['F']*count['R']*count['L']);
1ef2ecff66 2011-08-21        kinaba: 	}
1ef2ecff66 2011-08-21        kinaba: };
1ef2ecff66 2011-08-21        kinaba: 
1ef2ecff66 2011-08-21        kinaba: // BEGIN CUT HERE
1ef2ecff66 2011-08-21        kinaba: #include <ctime>
1ef2ecff66 2011-08-21        kinaba: double start_time; string timer()
1ef2ecff66 2011-08-21        kinaba:  { ostringstream os; os << " (" << int((clock()-start_time)/CLOCKS_PER_SEC*1000) << " msec)"; return os.str(); }
1ef2ecff66 2011-08-21        kinaba: template<typename T> ostream& operator<<(ostream& os, const vector<T>& v)
1ef2ecff66 2011-08-21        kinaba:  { os << "{ ";
1ef2ecff66 2011-08-21        kinaba:    for(typename vector<T>::const_iterator it=v.begin(); it!=v.end(); ++it)
1ef2ecff66 2011-08-21        kinaba:    os << '\"' << *it << '\"' << (it+1==v.end() ? "" : ", "); os << " }"; return os; }
1ef2ecff66 2011-08-21        kinaba: void verify_case(const string& Expected, const string& Received) {
1ef2ecff66 2011-08-21        kinaba:  bool ok = (Expected == Received);
1ef2ecff66 2011-08-21        kinaba:  if(ok) cerr << "PASSED" << timer() << endl;  else { cerr << "FAILED" << timer() << endl;
1ef2ecff66 2011-08-21        kinaba:  cerr << "\to: \"" << Expected << '\"' << endl << "\tx: \"" << Received << '\"' << endl; } }
1ef2ecff66 2011-08-21        kinaba: #define CASE(N) {cerr << "Test Case #" << N << "..." << flush; start_time=clock();
1ef2ecff66 2011-08-21        kinaba: #define END	 verify_case(_, MeetInTheMaze().getExpected(maze));}
1ef2ecff66 2011-08-21        kinaba: int main(){
1ef2ecff66 2011-08-21        kinaba: 
1ef2ecff66 2011-08-21        kinaba: CASE(0)
1ef2ecff66 2011-08-21        kinaba: 	string maze_[] = { "#########",
1ef2ecff66 2011-08-21        kinaba:   "####F####",
1ef2ecff66 2011-08-21        kinaba:   "##L...R##",
1ef2ecff66 2011-08-21        kinaba:   "####L####",
1ef2ecff66 2011-08-21        kinaba:   "#########" }
1ef2ecff66 2011-08-21        kinaba: ;
1ef2ecff66 2011-08-21        kinaba: 	  vector <string> maze(maze_, maze_+sizeof(maze_)/sizeof(*maze_));
1ef2ecff66 2011-08-21        kinaba: 	string _ = "9/2";
1ef2ecff66 2011-08-21        kinaba: END
1ef2ecff66 2011-08-21        kinaba: CASE(1)
1ef2ecff66 2011-08-21        kinaba: 	string maze_[] = { "LR",
1ef2ecff66 2011-08-21        kinaba:   "RF" }
1ef2ecff66 2011-08-21        kinaba: ;
1ef2ecff66 2011-08-21        kinaba: 	  vector <string> maze(maze_, maze_+sizeof(maze_)/sizeof(*maze_));
1ef2ecff66 2011-08-21        kinaba: 	string _ = "2/1";
1ef2ecff66 2011-08-21        kinaba: END
1ef2ecff66 2011-08-21        kinaba: CASE(2)
1ef2ecff66 2011-08-21        kinaba: 	string maze_[] = { "..F.#...",
1ef2ecff66 2011-08-21        kinaba:   "L.F.#..L",
1ef2ecff66 2011-08-21        kinaba:   "..F.#...",
1ef2ecff66 2011-08-21        kinaba:   ".R.#..L.",
1ef2ecff66 2011-08-21        kinaba:   "...#....",
1ef2ecff66 2011-08-21        kinaba:   "..R#.L.." }
1ef2ecff66 2011-08-21        kinaba: ;
1ef2ecff66 2011-08-21        kinaba: 	  vector <string> maze(maze_, maze_+sizeof(maze_)/sizeof(*maze_));
1ef2ecff66 2011-08-21        kinaba: 	string _ = "";
1ef2ecff66 2011-08-21        kinaba: END
1ef2ecff66 2011-08-21        kinaba: CASE(3)
1ef2ecff66 2011-08-21        kinaba: 	string maze_[] = { ".L..L..L..",
1ef2ecff66 2011-08-21        kinaba:   "..........",
1ef2ecff66 2011-08-21        kinaba:   "..........",
1ef2ecff66 2011-08-21        kinaba:   "..........",
1ef2ecff66 2011-08-21        kinaba:   "........R.",
1ef2ecff66 2011-08-21        kinaba:   "...R......",
1ef2ecff66 2011-08-21        kinaba:   "..........",
1ef2ecff66 2011-08-21        kinaba:   "..........",
1ef2ecff66 2011-08-21        kinaba:   "..........",
1ef2ecff66 2011-08-21        kinaba:   ".......F.." }
1ef2ecff66 2011-08-21        kinaba: ;
1ef2ecff66 2011-08-21        kinaba: 	  vector <string> maze(maze_, maze_+sizeof(maze_)/sizeof(*maze_));
1ef2ecff66 2011-08-21        kinaba: 	string _ = "40/3";
1ef2ecff66 2011-08-21        kinaba: END
1ef2ecff66 2011-08-21        kinaba: CASE(4)
1ef2ecff66 2011-08-21        kinaba: 	string maze_[] = { "#.#....#...#.#",
1ef2ecff66 2011-08-21        kinaba:   "#...#..#......",
1ef2ecff66 2011-08-21        kinaba:   ".L#...#R#..#F.",
1ef2ecff66 2011-08-21        kinaba:   "#...#......#..",
1ef2ecff66 2011-08-21        kinaba:   "#......#.....#",
1ef2ecff66 2011-08-21        kinaba:   ".R.....F....L.",
1ef2ecff66 2011-08-21        kinaba:   "##..#.......#.",
1ef2ecff66 2011-08-21        kinaba:   "#........##...",
1ef2ecff66 2011-08-21        kinaba:   ".F...##L#..#R#" }
1ef2ecff66 2011-08-21        kinaba: ;
1ef2ecff66 2011-08-21        kinaba: 	  vector <string> maze(maze_, maze_+sizeof(maze_)/sizeof(*maze_));
1ef2ecff66 2011-08-21        kinaba: 	string _ = "362/27";
1ef2ecff66 2011-08-21        kinaba: END
1ef2ecff66 2011-08-21        kinaba: CASE(5)
1ef2ecff66 2011-08-21        kinaba: 	string maze_[] = { "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFLLLLLLLLLFLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFLLLLLLLLLLRLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLRLLLLLFLLLLLLLLLLLLLLF",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLF",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLRLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLRRL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLRLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLR",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLRLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLRLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLRLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLRLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLFFLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "FLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLRLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLRLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLFLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLFLLLLLLLLLRLLLLLLLLLLLLLLLLLLLRLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLFLLLLLLLLLLLLLLLLRLLLLLLLLLRLLLLLLLLLLLLRLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLRLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLFLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLFLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLFLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "FLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLRLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLFLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
1ef2ecff66 2011-08-21        kinaba:   "LLLLLLLLLLLLLLLLLLLLLLLLLLLFLLLLLLLLLLLLLLLLLLLLLL" }
1ef2ecff66 2011-08-21        kinaba: ;
1ef2ecff66 2011-08-21        kinaba: 	  vector <string> maze(maze_, maze_+sizeof(maze_)/sizeof(*maze_));
1ef2ecff66 2011-08-21        kinaba: 	string _ = "210623/4100";
1ef2ecff66 2011-08-21        kinaba: END
1ef2ecff66 2011-08-21        kinaba: /*
1ef2ecff66 2011-08-21        kinaba: CASE(6)
1ef2ecff66 2011-08-21        kinaba: 	string maze_[] = ;
1ef2ecff66 2011-08-21        kinaba: 	  vector <string> maze(maze_, maze_+sizeof(maze_)/sizeof(*maze_));
1ef2ecff66 2011-08-21        kinaba: 	string _ = ;
1ef2ecff66 2011-08-21        kinaba: END
1ef2ecff66 2011-08-21        kinaba: CASE(7)
1ef2ecff66 2011-08-21        kinaba: 	string maze_[] = ;
1ef2ecff66 2011-08-21        kinaba: 	  vector <string> maze(maze_, maze_+sizeof(maze_)/sizeof(*maze_));
1ef2ecff66 2011-08-21        kinaba: 	string _ = ;
1ef2ecff66 2011-08-21        kinaba: END
1ef2ecff66 2011-08-21        kinaba: */
1ef2ecff66 2011-08-21        kinaba: }
1ef2ecff66 2011-08-21        kinaba: // END CUT HERE