Dotcpp  >  编程题库  >  蓝桥杯2020年第十一届国赛真题-皮亚诺曲线距离
题目 2592:

蓝桥杯2020年第十一届国赛真题-皮亚诺曲线距离

时间限制: 2s 内存限制: 192MB 提交: 387 解决: 79

题目描述

皮亚诺曲线是一条平面内的曲线。
下图给出了皮亚诺曲线的 1 阶情形,它是从左下角出发,经过一个 3×3 的

方格中的每一个格子,最终到达右上角的一条曲线.

蓝桥杯2020年第十一届国赛真题-皮亚诺曲线距离1

下图给出了皮亚诺曲线的 2 阶情形,它是经过一个 3 2 × 3 2 的方格中的每一
个格子的一条曲线。它是将 1 阶曲线的每个方格由 1 阶曲线替换而成。
蓝桥杯2020年第十一届国赛真题-皮亚诺曲线距离2

下图给出了皮亚诺曲线的 3 阶情形,它是经过一个 3 3 × 3 3 的方格中的每一
个格子的一条曲线。它是将 2 阶曲线的每个方格由 1 阶曲线替换而成。
蓝桥杯2020年第十一届国赛真题-皮亚诺曲线距离3

皮亚诺曲线总是从左下角开始出发,最终到达右上角。

我们将这些格子放到坐标系中,对于 k 阶皮亚诺曲线,左下角的坐标是(0, 0),右上角坐标是 (3k − 1, 3k − 1),右下角坐标是 (3k − 1, 0),左上角坐标是(0, 3k − 1)。

给定 k 阶皮亚诺曲线上的两个点的坐标,请问这两个点之间,如果沿着皮亚诺曲线走,距离是多少?

输入格式

输入的第一行包含一个正整数 k,皮亚诺曲线的阶数。第二行包含两个整数 x1, y1,表示第一个点的坐标。
第三行包含两个整数 x2, y2,表示第二个点的坐标。

输出格式

输出一个整数,表示给定的两个点之间的距离。

样例输入

1
0 0
2 2

样例输出

8

提示

对于 30% 的评测用例,0 ≤ k ≤ 10。
对于 50% 的评测用例,0 ≤ k ≤ 20。
对于所有评测用例,0≤?≤100,0≤?1,?1,?2,?2<3^?,?1,?1,?2,?2≤10^18  
数据保证答案不超过 10^18。
标签