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

时间限制: 1s 内存限制: 128MB 提交: 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。

比赛公告

简介

Dotcpp编程2022年八月月赛,欢迎大家踊跃报名参赛!

本次月赛将于2022年8月27日(星期六)进行,时间为晚上19:00 - 22:00,共计3小时。


题目

本次月赛共有五道题,比赛结束后欢迎提交题解。


奖品

赛后提交题解并获得优质题解的小伙伴将获得小礼品一份~


生命不息,刷题不止!


PS:Dotcpp支持创建自主比赛,适合社团、老师教学训练,欢迎使用!