汉诺塔(快速幂取模) Bertha 。 2022-06-03 22:59 473阅读 0赞 ## 汉诺塔(一) ## 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 在印度,有这么一个古老的传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针。印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔。不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必须在大片上面。僧侣们预言,当所有的金片都从梵天穿好的那根针上移到另外一根针上时,世界就将在一声霹雳中消灭,而梵塔、庙宇和众生也都将同归于尽。 现在请你计算出起始有m个金片的汉诺塔金片全部移动到另外一个针上时需要移动的最少步数是多少?(由于结果太大,现在只要求你算出结果的十进制位最后六位) 输入 第一行是一个整数N表示测试数据的组数(0<N<20) 每组测试数据的第一行是一个整数m,表示起始时金片的个数。(0<m<1000000000) 输出 输出把金片起始针上全部移动到另外一个针上需要移动的最少步数的十进制表示的最后六位。 样例输入 2 1 1000 样例输出 1 69375 #include<stdio.h> #include<math.h> long long f(long long b) { long long a=2; long long c=1000000; long long ans=1; while(b>0) { if(b%2==1) ans=(ans*a)%1000000; a=(a*a)%1000000; b/=2; } return ans; } int main() { int T; scanf("%d",&T); while(T--) { long long n; scanf("%lld",&n); printf("%lld\n",f(n)-1); } }
相关 汉诺塔 汉诺塔 1.目标 2.思路(算法 ) 3.实现 4.总结(如何理解这个算法) 注意: 1.目标 目标很明确就是将下图中A柱子上 淡淡的烟草味﹌/ 2022年11月02日 13:14/ 0 赞/ 49 阅读
相关 汉诺塔 package com.someusefuldesign.demo; /假设有A B C三个柱子移动的顺序为: / public class 妖狐艹你老母/ 2022年08月13日 15:54/ 0 赞/ 220 阅读
相关 汉诺塔 Problem Description 汉诺塔(又称河内塔)问题是印度的一个古老的传说。 开天辟地的神勃拉玛在一个庙里留下了三根金刚石的棒A、B和C,A上面套着 Dear 丶/ 2022年06月17日 05:28/ 0 赞/ 300 阅读
相关 汉诺塔 汉诺塔 Time Limit: 1000MS Memory Limit: 65536KB [Submit][] [Statistic][] Prob 约定不等于承诺〃/ 2022年06月11日 03:24/ 0 赞/ 244 阅读
相关 汉诺塔 \include<stdio.h> void hanoi(int n,char A,char B,char C) \{ if(n==1) printf("Move s 逃离我推掉我的手/ 2022年06月10日 12:57/ 0 赞/ 291 阅读
相关 汉诺塔 include <stdio.h> void hannuota(int n,char A,char B,char C){ if(1 == n){ 川长思鸟来/ 2022年06月07日 13:06/ 0 赞/ 217 阅读
相关 汉诺塔(快速幂取模) 汉诺塔(一) 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 在印度,有这么一个古老的传说:在世界中心贝拿勒斯(在印度北部)的圣 Bertha 。/ 2022年06月03日 22:59/ 0 赞/ 474 阅读
相关 汉诺塔 汉诺塔 Time Limit: 1000 ms Memory Limit: 65536 KiB [Submit][] [Statistic][] Problem D 怼烎@/ 2022年05月29日 05:58/ 0 赞/ 257 阅读
相关 汉诺塔 def move(n, a, b, c): if n == 1: \ 如果a只有1盘子 print(a, '-->', c); \ 直接把盘子从a移到c els 迷南。/ 2022年05月18日 22:25/ 0 赞/ 320 阅读
还没有评论,来说两句吧...