博客
关于我
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: Windows下用 multiprocessing 的深坑
    查看>>
    python:Could not find platform independent libraries <prefix>解决方法
    查看>>
    Python:datetime tzinfo 时区名称文档
    查看>>
    Python:deepcopy(list) vs new_list = old_list[:]
    查看>>
    Python:Google API - 从消息中获取 mimeTypes
    查看>>
    Python:Google API - 从消息中获取 mimeTypes
    查看>>
    Python:subprocess.call,stdout to file,stderr to file,在屏幕上实时显示stderr
    查看>>
    Python:TypeError:无法连接“str“和“int“对象
    查看>>
    Python:XPath 在 ElementTree 中不可用
    查看>>
    Python:从 FTP 服务器下载文件
    查看>>
    python:从列表中创建元组列表
    查看>>
    Python:从嵌套列表中删除重复项
    查看>>
    Python:从间隔映射到值
    查看>>
    Python:使用 shell=False 的子进程调用不起作用
    查看>>
    Python:修改 PATH 环境变量的平台无关方式
    查看>>
    Python:假与 0
    查看>>
    Python:函数使用
    查看>>
    Python:函数进阶
    查看>>
    Python:在整数的二进制表示中查找最长的二进制间隙
    查看>>
    Python:如何从二进制转换为 base 64 并返回?
    查看>>