P1050 循环

    • 627通过
    • 2.1K提交
  • 题目提供者 CCF_NOI
  • 评测方式 云端评测
  • 标签 字符串 模拟 递推 高精 NOIp普及组 2005 高性能
  • 难度 提高+/省选-
  • 时空限制 1000ms / 128MB

题解

  • 提示:收藏到任务计划后,可在首页查看。
  • 最新讨论 显示

    推荐的相关题目 显示

    题目描述

    乐乐是一个聪明而又勤奋好学的孩子。他总喜欢探求事物的规律。一天,他突然对数的正整数次幂产生了兴趣。

    众所周知, $2$ 的正整数次幂最后一位数总是不断的在重复 $2,4,8,6,2,4,8,6…$ 我们说 $2$ 的正整数次幂最后一位的循环长度是 $4$ (实际上 $4$ 的倍数都可以说是循环长度,但我们只考虑最小的循环长度)。类似的,其余的数字的正整数次幂最后一位数也有类似的循环现象:

        循环    循环长度
    2   2,4,8,6   4
    3   3,9,7,1   4
    4   4,6       2
    5   5         1
    6   6         1
    7   7,9,3,1   4
    8   8,4,2,6   4
    9   9,1       2

    这时乐乐的问题就出来了:是不是只有最后一位才有这样的循环呢?对于一个整数 $n$ 的正整数次幂来说,它的后k位是否会发生循环?如果循环的话,循环长度是多少呢?

    注意:

    1. 如果 $n$ 的某个正整数次幂的位数不足 $k$ ,那么不足的高位看做是 $0$ 。

    2. 如果循环长度是 $L$ ,那么说明对于任意的正整数 $a,n$ 的 $a$ 次幂和 $a+L$ 次幂的最后k位都相同。

    输入输出格式

    输入格式:

    一行,包含 $2$ 个整数 $n(1 \le n < 10^{100})$ 和 $k(1 \le k \le 100)$ , $n$ 和 $k$ 之间用一个空格隔开,表示要求 $n$ 的正整数次幂的最后 $k$ 位的循环长度。

    输出格式:

    一个整数,表示循环长度。如果循环不存在,输出 $-1$ 。

    输入输出样例

    输入样例#1: 复制
    32 2
    输出样例#1: 复制
    4

    说明

    对于30%的数据, $k \le 4$ ;

    对于全部的数据, $k \le 100$ 。

    NOIP2005普及组第四题

    提示
    标程仅供做题后或实在无思路时参考。
    请自觉、自律地使用该功能并请对自己的学习负责。
    如果发现恶意抄袭标程,将按照I类违反进行处理。