题解 | #循环汉诺塔#

循环汉诺塔

https://www.nowcoder.com/practice/cdf0808f841748faba058c8ef538c731

import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        int n = in.nextInt();
        long ptoB = 0;
        long ptoC = 0;
        long toB = 1;
        long toC = 2;

        for (int i = 1; i < n; i++) {
            ptoB = toB;
            ptoC = toC;

            //该计算公式可以通过分析得出,受教于博客
            //https://blog.csdn.net/weixin_44473131/article/details/123994601?        	 ops_request_misc=&request_id=&biz_id=102&utm_term=%E5%BE%AA%E7%8E%AF%E6%B1%89%E8%AF%BA%E5%A1%94%E9%97%AE%E9%A2%98&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-2-123994601.142^v96^pc_search_result_base2&spm=1018.2226.3001.4187
            toB = (2 * ptoC + 1) % 1000000007;
            toC = (2 * ptoC + 2 + ptoB) % 1000000007;
        }

        System.out.println(toB + " " + toC);
    }
}

全部评论

相关推荐

jorojoro:我觉得你绩点不高,就别写了,然后你主修课程那块儿最好是把高分课程放前面,不写分数别人会觉得你这几门都不行
点赞 评论 收藏
分享
09-22 19:03
南昌大学 Java
第一个offer是迪子发的,但是高兴不起来
捡走一只羊:就像:好久没谈念爱了,突然有个不喜欢的女生给自己表白
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务