algorithm - 如何计算(1+a%m+a^2%m……+a^n%m)的总和

标签 algorithm

如何计算(1+a%m+a^2%m……+a^n%m)的总和哪里 m=k!, 1<=k<=12, n<=10^18 。如何计算这个总和。 使用电脑,时间限制为3秒。 抱歉我的错误

最佳答案

1+a+a^2+...+a^n = (1+a+a^2+...+a^n)*(1-a)/(1-a) =
= (1 - a^(n+1))/(1-a)

换句话说,您的表达式可以计算为:

(1 - a^(n+1))/(1-a) % m

或者,以编程形式,

fmod((1-pow(a,n+1))/(1-a), m)

关于algorithm - 如何计算(1+a%m+a^2%m……+a^n%m)的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18956116/

相关文章:

c# - 获取位数组中 1 的索引?

algorithm - 在图中查找 O(V+E) 时间的 MST

java - 尝试按列表项对 HashMap<String, List<String>> 进行排序

sql - 如何将 "weights"添加到MySQL表中并根据这些选择随机值?

根据剩余空间将作业分配给主机的算法

c++ - 对元素范围为 0 到 9999 的数组进行排序

javascript - 在 Javascript 中可视化汉诺塔算法

从文本电子邮件中解析约会数据的算法

algorithm - 如何以最少的步骤删除图形?

c++ - 在列表 C++ 中查找第一个和第二个元素