2019年清华软院推免考试(校外直博&校内硕/博) 第三题——同构数

该博客介绍了2018年清华大学软件学院推免考试中的一道题目,涉及寻找特定进制下的第k个同构数。博主提出使用高精度加动态规划的思路来解决此问题,通过分析同构数的性质,利用动态规划减少计算量,逐步构建多位同构数。文章提供了相应的代码实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述

2018年清华软院推免考试(校外直博&校内硕/博)

第三题——同构数

 

如果一个数n满足:记n的位数为d(n),若n的各次幂的末d(n)位都与n相等,则称n为“同构数”。现在题目是,输入进制m和正整数k,求m进制下第k个同构数,例如10进制下第4个同构数是25(1,5,6,25)。这里约定所有进制的第一个同构数都是1.

规模约定:m大于5小于16,k小于21,保证结果存在且小于INT_MAX,但不保证中间计算过程不会超出INT_MAX

示例:

Input

6 2

Output

3

(因为是考后回忆,可能记忆有些模糊了,题干和代码都有可能有错,忘谅解)

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值