千家信息网

如何用整数二分实现四平方和

发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,这篇文章主要介绍"如何用整数二分实现四平方和",在日常操作中,相信很多人在如何用整数二分实现四平方和问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"如何用整数二分实现四平
千家信息网最后更新 2025年02月01日如何用整数二分实现四平方和

这篇文章主要介绍"如何用整数二分实现四平方和",在日常操作中,相信很多人在如何用整数二分实现四平方和问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"如何用整数二分实现四平方和"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

#include #include #include #include using namespace std;const int N =2500010;//结构体struct Sum{    int s,c,d;    //重载运算符    bool operator< (const Sum &t)const{        if(s!=t.s) return s>n;    //枚举c、d并存下来    for(int c=0;c*c<=n;c++){        for(int d=c;c*c+d*d<=n;d++){            sum[m++]={c*c+d*d,c,d};        }    }    //排序    sort(sum,sum+m);    //枚举a、b    for(int a=0;a*a<=n;a++){        for(int b=0;a*a+b*b<=n;b++){            int t=n-a*a-b*b;            //区间            int l=0,r=m-1;            //性质            while(l>1;                if(sum[mid].s>=t) r=mid;                else l=mid+1;            }            if(sum[l].s==t){                printf("%d %d %d %d",a,b,sum[l].c,sum[l].d);                return 0;            }        }    }    return 0;}

到此,关于"如何用整数二分实现四平方和"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

0