元素 mathbb{Z}_n中的二次余数,如果它与某个完全平方模一致。
是否有一种有效的算法来找到中的所有二次残差?是复合的,如果有帮助,我们知道它的所有因素。
更新:
我们还有一个限制: =,其中是不同的奇素数,。在这种情况下我们能得到一些东西吗?
我目前使用以下方法:
迭代从开始的完美正方形,并随时存储它们。问题是随着n的增长它会很快变慢。这是代码示例:
#include <stdio.h>
int main() {
int n = 7 * 11;
int qr = 0;
int step = 1;
for (int i = 0;i <= n / 2;i++) {
printf("qr: %i\n", qr);
// perform some operation on qr here
// e.g. store it somewhere to access later
qr = (qr + step) % n;
step += 2;
}
return 0;
}