T291125 Tower of Hanoi

题目背景

法国数学家爱德华·卢卡斯曾编写过一个印度的古老传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针。印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔。 不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必须在大片上面。僧侣们预言,当所有的金片都从梵天穿好的那根针上移到另外一根针上时,世界就将在一声霹雳中消灭,而梵塔、庙宇和众生也都将同归于尽。

题目描述

有 $n$ 个**大小不等**的中空圆盘,按从小到大的顺序从 $1$ 到 $n$ 编号。 有三个立柱,编号分别为 $A$ , $B$ , $C$ ![Tower of Hanoi](https://vj.csgrandeur.cn/d7eba3b2205c77f12039233732c50513?v=1667868042) 初始状态:$n$ 个圆盘任意的迭套在 $A$ 立柱上(盘的尺寸由下到上依次变小) 目标状态:按照要求,将圆盘全部移至 $C$ 柱 移动时有如下要求: - 一次只能移一个盘; - 不允许把大盘移到小盘上面。 现在要求找到一种步数最少的移动方案,使得从初始状态转变为目标状态。

输入格式

一个整数,圆盘总数 $n$。

输出格式

一个整数,代表从初始状态到目标状态的最少步数。 由于答案过大,因此请输出它对 $998244353$ 取模的值

说明/提示

对于 $30\%$ 的数据,满足 $0 \le n \le 10^3$ 对于 $100\%$ 的数据,满足 $0 \le n \le 10^{18} $