- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
谁能给我一个大 n(比如 10^10)的有效算法的想法,以找到上述系列的总和?
Mycode 在 n=100000 和 m=200000 时被杀死
#include<stdio.h>
int main() {
int n,m,i,j,sum,t;
scanf("%d%d",&n,&m);
sum=0;
for(i=1;i<=n;i++) {
t=1;
for(j=1;j<=i;j++)
t=((long long)t*i)%m;
sum=(sum+t)%m;
}
printf("%d\n",sum);
}
最佳答案
两个注意事项:
(a + b + c) % m
相当于
(a % m + b % m + c % m) % m
和
(a * b * c) % m
相当于
((a % m) * (b % m) * (c % m)) % m
因此,您可以使用 O(log p) 中的递归函数计算每一项:
int expmod(int n, int p, int m) {
if (p == 0) return 1;
int nm = n % m;
long long r = expmod(nm, p / 2, m);
r = (r * r) % m;
if (p % 2 == 0) return r;
return (r * nm) % m;
}
然后使用 for
循环对元素求和:
long long r = 0;
for (int i = 1; i <= n; ++i)
r = (r + expmod(i, i, m)) % m;
这个算法是 O(n log n)。
关于algorithm - 序列总和 : 1^1 + 2^2 + 3^3 + . .. + n^n (mod m),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45282808/
如何在 Mod Security 中获取响应/请求正文的大小? 我不断收到此错误,例如: [Mon Sep 17 23:34:38 2012] [error] [client 192.168.1.1]
我要计算的值 对于给定的 N 值,F(N) = (F(N-1) * [((N-R+1)^(N-R+1))/(R^R)]) mod M, R 和 M. 这里 A^B 显示 A 的幂 B 而不是任何位操作
这个程序中的ans = (ans + mod) % mod语句需要什么? 假设 mod = 10^9+7。此函数在 O(log(n)) 复杂度的模运算下计算 a 的 b 次方: long long p
我正在尝试做简单的思考。在循环中使用 ng-include 将多个 html 页面包含到渲染页面。 $scope.modules = ["mod_nav","mod_feature"
我有一个使用moodle库的项目。由于客户端请求,我不得不将 URL 从moodle.example.com 更改为learn.example.com。 我认为这将是一个简单的更改,但唉,moodle
我正在尝试制作一个 Taskfile.yml 文件来构建 go 应用程序,但我不太明白在 go build main.go 之前需要“GOFLAGS=-mod=mod”命令。 引用:https://d
我正在尝试制作一个 Taskfile.yml 文件来构建 go 应用程序,但我不太明白在 go build main.go 之前需要“GOFLAGS=-mod=mod”命令。 引用:https://d
首先,我想说,我从谷歌尝试了很多方法,但 mod_rewrite 不起作用! 我从 httpd.conf 尝试了我在谷歌上找到的 1000000 种方式,但仍然无法正常工作。 我想从 example.
你好我试图安装 libapache2-mod-fcgid mod 但总是出错。 root@mail:~# sudo apt-get install libapache2-mod-fcgid Readi
我需要在 URL 中使用 + 字符。我将 Apache 与 PHP 结合使用。 ([A-Za-z0-9/_%-@\+]*) 不起作用。 我需要的是www.domain.com/c++/ => inde
关闭。这个问题需要更多 focused .它目前不接受答案。 想改进这个问题?更新问题,使其仅关注一个问题 editing this post . 2年前关闭。 Improve this questi
我正在尝试在新的 Ubuntu 14.04 上设置一个 apache2 Web 服务器。我一直按照找到的说明进行操作 here一切都很顺利,直到我到达被告知编辑 mod-security.conf 的
当我运行“go mod tidy”时它会中断,因为我的项目导入的包使用路径“github.com/coreos/bbolt”导入了另一个包,但是当它从该路径获取包时,它的 go.mod 说它的路径是“
这种脚本语言没有 % 或 Mod()。我确实有一个 Fix() 可以去掉数字的小数部分。我只需要积极的结果,所以不要太健壮。 最佳答案 威尔 // mod = a % b c = Fix(a / b)
在我的小项目中,我有一个脚本通过运行静态代码检查来确保正确的代码质量,例如,我使用 errcheck验证我是否处理了代码中的每个错误。 在 dep ,对于这种依赖有一个特殊的部分,称为 require
我使用 sudo apt install golang-go 在我的 ubuntu 中安装了 go 语言. 它已成功安装。当我运行 go version我收到 go version go1.10.4
谁能帮我解决这个问题: RewriteCond %{HTTP_HOST} !^www\.(.*)$ [NC] RewriteRule ^(.*)$ http://www.$1 [R=301,L] 我想
BigIntegerValue.pow(IntegerValue) Java 上的指数是整数,但我有 Biginteger 值。 我曾尝试验证签名 GOST 3410,我得到了这个代码 pow,但它太
所以我才开始使用 Forge。我只是有一个非常简单的示例 mod 用于学习目的。当我使用 gradlew build 导出 mod 时,一切正常,它将 mod 放入 forge 的 build\lib
在玩 jmh 时,我遇到了一件我无法解释的奇怪事情。 @BenchmarkMode(Mode.SingleShotTime) @Measurement(iterations = 10, batchSi
我是一名优秀的程序员,十分优秀!