bzoj#P2930. [Poi1999]梦游者

[Poi1999]梦游者

题目描述

在一幢豪华的公寓中,有一块面积巨大的正方形大厅。这个大厅的地板被分成了 3k×3k3^k\times 3^k 个格子,每个格子上都被铺了一块与格子面积大小一致的瓷砖,如此的布置使得整个大厅显得更加的气派。遗憾的是,地板上有一块瓷砖因为损坏而被移走了,这就留下了一个洞。

为了方便的表示这个洞的位置,我们将大厅的地板置于一个平面直角坐标系中,最西南方的格子的坐标为 (1,1)(1,1),往东是 X 轴的正方向,往北是 Y 轴的正方向。

一个梦游者正在这个大厅里游荡。梦游者从西南方 (1,1)(1,1) 出发,每次可以往四周的方向(东 E\text{E}、南 S\text{S}、西 W\text{W}、北 N\text{N})移动,要走便所有的格子而不重复。

他的行动路线十分怪异,例如 k=1k=1,即地板是 3×33\times 3 规模时,他的行走路线为:

D1=EENNWSWND_1=\text{EENNWSWN}

k=2k=2 时,地板是 9×99\times 9 规模,他的行走路线为:

$D_2=\text{NNEESWSEENNEESWSEEEENNWSWNNEENNWSWNNEENNWSWNWWWSESSSSW}$ WNENWWSSWWNENWNEENNWSWN\text{WNENWWSSWWNENWNEENNWSWN}

直观的将路线画在图上如下图:

总的来说,当地板规模是 3k+1×3k+13^{k+1}\times 3^{k+1} 时,梦游者的路径为:

$D_{k+1} =\text{a(Dk) E a(Dk) E Dk N Dk N Dk W c(Dk) S b(Dk) W b(Dk) N k}$

其中,a()\text{a()}b()\text{b()}c()\text{c()} 均表示一种字母置换,具体如下:

例如,a(SEN)=WNE\text{a(SEN)=WNE}(SEN)=ESW\text{(SEN)=ESW}c(SEN)=NWS\text{c(SEN)=NWS}

现在,梦游者正站在坐标为 (x1,y1)(x1,y1) 的地板上,而没有因为瓷砖损坏造成了一个洞的地板坐标为 (x2,y2)(x2,y2)。你能求出可怜的梦游者将在第几步后跌入洞中么?

输入格式

第一行有一个数字 kk,表示大厅地板的规模是 3k×3k3^k\times 3^k

第二行有两个数字,x1x1y1y1 表示梦游者 L 先生开始所站的坐标位置。

第三行有两个数字,x2x2y2y2 表示洞的坐标位置。

可以保证的是梦游者在若干步之后一定会跌入洞中。

输出格式

输出文件只有一行,一个数字,表示多少步后,梦游者会跌如洞中。

2
3 2
7 2
20

数据规模与约定

对于 100%100\% 的数据,1k601\le k\le 60