四方定理

来源:互联网 发布:淘宝网店注册流程 编辑:程序博客网 时间:2024/04/29 16:59

数论中有著名的四方定理:所有自然数至多只要用四个数的平方和就可以表示。

我们可以通过计算机验证其在有限范围的正确性。

 

对于大数,简单的循环嵌套是不适宜的。

《蓝桥杯填空》

参考代码:

#include <stdio.h>#include<math.h>int f(int n, int a[], int idx){if(n==0) return 1;  // 填空1if(idx==4)  return 0;for(int i=(int)sqrt(n); i>=1; i--){a[idx] = i;if(f(n-pow(i,2),a,idx+1)==0)  return 1;  // 填空2}return 0;}int main(int argc, char** argv) {int a[4]={0},number; for(;;){int number;printf("输入整数(1~10亿):");scanf("%d",&number);int a[] = {0,0,0,0};int r = f(number, a, 0);printf("%d: %d %d %d %d\n", r, a[0], a[1], a[2], a[3]);}return 0;}



0 0