northwolves 发表于 2024-7-7 22:40:03

高次幂展开各数位求和

1.整数m满足m^6展开之后各位数之和等于729,求最小的m?

目前计算得到的上限:

m=7574813008688994204, m^6 是一个114位数,各位数之和等于729

m=4472033080333397226, m^6 是一个112位数,各位数之和等于729


2.整数m满足m^10展开之后各位数之和等于1024,求最小的m?

目前计算得到的上限:

m=9531938816691493376, m^10 是一个190位数,各位数之和等于1024

m=92688227824002136, m^10 是一个170位数,各位数之和等于1024

uk702 发表于 2024-7-8 07:35:24

题主的意思是已经有一组解但不知道是不是最小解?那么,这组解是怎么得到的?
这似乎更有意思。

nyy 发表于 2024-7-8 08:16:20

我只能建议你用穷举法!或者模1000,开六次方,得到

PowerModList

那么这个数m的后三位是,
{003, 247, 253, 497, 503, 747, 753, 997}
只有这八种可能,这样工作量就减少到8/1000=0.008。

这种是729的情况


nyy 发表于 2024-7-8 08:20:33

假设m^6的各位都是9, 那么至少729/9=81个9
那么这个数是99999....9(81个9),
对这个数开六次方,得到
IntegerPart[(10^81 - 1)^(1/6)] + 1
得到
31622776601684
这个数有14位。从这个数开始穷举,
如果后三位不是{003, 247, 253, 497, 503, 747, 753, 997}
直接pass掉。

uk702 发表于 2024-7-8 08:29:11

nyy 发表于 2024-7-8 08:16
我只能建议你用穷举法!或者模1000,开六次方,得到

PowerModList


题目要求各个数字和是729,没说以729结尾。
瞎回帖不是一种美德。

nyy 发表于 2024-7-8 08:29:14

补充一下你的代码
Plus @@ IntegerDigits

4472033080333397226
Plus @@ IntegerDigits

nyy 发表于 2024-7-8 08:32:24

Clear["Global`*"];
n=31622776601684;(*循环开始检索的这个数*)
Do==729,Print],{m,n,n+10^5}]


穷举法代码,但是估计要找到比较困难!

uk702 发表于 2024-7-8 09:05:02

本帖最后由 uk702 于 2024-7-8 10:29 编辑

uk702 发表于 2024-7-8 07:35
题主的意思是已经有一组解但不知道是不是最小解?那么,这组解是怎么得到的?
这似乎更有意思。 ...

关于这个“更有意思”的问题,我现在能想到的一个办法(蒙特卡罗方法?),开 N 台机,每台机又开 N 个进程,每个进程都执行如下的操作:

随机生成一个数字和为729的十进制数字串(先生成前 n-1 个数字,若这 n-1 个数字的和小于 729 则继续生成第 n 个数字,最后一个数字为 729 - 前面 n-1 个数字和),然后开 6 次方,看看是不是整数。

之后的事就完全交给运气了,在没有其它招的情况下,说不定这是效率(尤其是储存效率)最高的方法。

---

这个方法如果还有改进的空间的话,在指定总位长的话(比如说 90 位、100位),或许当验证前 n-1 位为 ab....x 时,ab....x... 到 ab....(x+1)... 之间无 6 次方数,则该字头串不再尝试。

如果这个改进方法还有继续改进的空间的话,在指定总位长的话(比如说 90 位、100位),或许是 当验证前 n-1 位为 ab....x 时,试图猜测第 n 位有可能是什么(哪些)数字(根据开 6 次方后的小数位该补多少才能够为整数,猜测第 n 位该是啥)

王守恩 发表于 2024-7-8 12:13:44

Table, Total] == 9 n &], {n, 2, 36}]
{3, 6, 21, 12, 33, 75, 123, 96, 273, 354, 717, 1194,2136,4104,7974,11196,14136,27627,42162,85446,140502,159948,430818,447054,792783,1387617,2817006,3018897,5509527,8878617,18370974,36010977,62177676,72883254,134377098}

王守恩 发表于 2024-7-8 15:32:17

Table, Total] == 9 n &], {n, 3, 52}]
{3, 6, 9, 15, 18, 36, 27, 96, 72, 159, 237, 381, 348, 693, 555, 1476, 2022, 2568, 2493, 4818, 4446, 7446, 12915, 17469, 31227, 41799, 59247, 96258, 125064, 211026, 232614, 305226, 436806,
706059, 765156, 1219551, 1350756, 3052353, 2089047, 2984517, 8906538, 13509534, 18618906, 23264568, 36667776, 44495439, 78075918, 105968319, 83240802, 211791549}
页: [1] 2
查看完整版本: 高次幂展开各数位求和