博客
关于我
POJ 3696
阅读量:136 次
发布时间:2019-02-27

本文共 293 字,大约阅读时间需要 1 分钟。

要找到一个全由8组成的最短数,使得给定的L能整除它,可以按照以下步骤进行:

  • 计算最大公约数:首先计算8和L的最大公约数d = gcd(8, L)。
  • 确定模数M:计算M = 9L / d。
  • 检查互质性:检查10和M是否互质,即gcd(10, M)是否为1。如果不是,问题无解。
  • 计算欧拉函数:计算M的欧拉函数φ(M)。
  • 寻找最小n:找到φ(M)的最小因子n,使得10^n ≡ 1 mod M。
  • 通过以上步骤,可以确定最短的全8组成的数的长度n,从而找到满足条件的最小数。

    最终答案:通过计算确定最小的n,使得全8组成的数的长度为n。例如,对于L=7,最小的n是6,对应的数为888888。

    转载地址:http://qtib.baihongyu.com/

    你可能感兴趣的文章
    Python 多处理 apply_async 永远不会在 Windows 7 上返回结果
    查看>>
    Python 多处理 Numpy 随机
    查看>>
    Python 多处理 >= 125 列表永远不会完成
    查看>>
    Python 多处理:在第一个子错误时中止映射
    查看>>
    Python 多处理不断产生 pythonw.exe 进程而不做任何实际工作
    查看>>
    Python 多处理从不加入
    查看>>
    Python 多处理如何优雅地退出?
    查看>>
    Python 多处理将子进程的标准输出重定向到 Tkinter 文本
    查看>>
    Python 多处理库错误(AttributeError:__exit__)
    查看>>
    Python 多处理模块的 .join() 方法到底在做什么?
    查看>>
    python 多线程与GIL
    查看>>
    Python 多线程学习(转)
    查看>>
    python 多进程-基础
    查看>>
    python 多进程-进阶-进程池
    查看>>
    python 多进程-进阶-进程间通信之Pipe
    查看>>
    python 多进程-进阶-进程间通信之Queue
    查看>>
    Python编程快速入门
    查看>>
    Python编程基础(附Pycharm与开发环境)
    查看>>
    python 如何“否定“value : 如果为真则返回假,如果为假则返回真
    查看>>
    Python 如何在 Web 环境中使用 Matplotlib 进行数据可视化
    查看>>