题目2270:蓝桥杯2016年第七届真题-四平方和

#include<iostream>

#include<cstring>

#include<vector>

using namespace std;

const int N=5000010;

int c[N],d[N];

int n;

vector<int>v(1);

void init(){

memset(c,-1,sizeof(c));

for(int i=1;i*i<2*n;i++){

v.push_back(i*i);

}

for(int i=0;v[i]<=n;i++){

for(int j=i;v[i]+v[j]<=n;j++){

int sum=v[i]+v[j];

if(c[sum]==-1){//第一次遇见的数

c[sum]=i;

d[sum]=j;

}

}

}

}

int main(){

cin>>n;

init();

int res;

for(int i=0;v[i]<=n;i++){

for(int j=i;v[j]+v[i]<=n;j++){

res=n-v[i]-v[j];

if(c[res]!=-1){//表示该数已经被记录过,可以拆成两个数平方的形式

cout<<i<<" "<<j<<" ";

cout<<c[res]<<" "<<d[res];

return 0;

}

}

}

}

相关推荐
mjhcsp2 小时前
C++遗传算法(Genetic Algorithm,GA):进化式全局优化的核心解析
开发语言·c++
CoovallyAIHub2 小时前
CVPR 2026 | VisualAD:去掉文本编码器,纯视觉也能做零样本异常检测
算法·架构·github
CoovallyAIHub2 小时前
东南大学提出 AutoIAD:多 Agent 驱动的工业异常检测自动化框架
算法·架构·github
ccLianLian2 小时前
算法·字符串
算法·哈希算法
sinat_286945192 小时前
spec vs plan ai coding
人工智能·深度学习·算法·chatgpt·prompt
Aaswk3 小时前
蓝桥杯2025年第十六届省赛真题(更新中)
c语言·数据结构·c++·算法·职场和发展·蓝桥杯
舟舟亢亢3 小时前
算法总结——【堆、堆排序】
算法