xtuoj 等式

等式

题目描述

a,b,c是正整数,且a≤b≤c,已知a2+b2+c2=n,求a,b,c有多少种不同的值?

输入格式

第一行是一个整数T(1≤T≤500),表示样例的个数。

以后每行一个样例,为一个整数n (3≤n≤106)。

输出格式

依次每行输出每个样例的结果,为一个整数。

样例输入

复制代码
2 
3 
2021

样例输出

复制代码
1 
17
cpp 复制代码
#include<stdio.h>
#include<math.h> 
int main()
{
   int N;
   scanf("%d",&N);
   while(N--)
   {
       long long n;
       scanf("%lld",&n);
       int count=0;
       for(int a=1;a*a<=n;a++)
       {
           for(int b=a;a*a+b*b<=n;b++)
           {
               double c=sqrt(n-a*a-b*b);
               if(c==(int)c&&c>=b)
               count++;
           }
       }
       printf("%d\n",count);
       
   }
   return 0;
}
相关推荐
爱滑雪的码农几秒前
Java基础十七:数据结构
数据结构
多加点辣也没关系11 分钟前
数据结构与算法|第二十三章:高级数据结构
数据结构·算法
孬甭_2 小时前
初识数据结构与算法
数据结构
hoiii1872 小时前
孤立森林 (Isolation Forest) 快速异常检测系统
算法
c++之路4 小时前
适配器模式(Adapter Pattern)
java·算法·适配器模式
吴声子夜歌4 小时前
Java——接口的细节
java·开发语言·算法
myheartgo-on4 小时前
Java—方 法
java·开发语言·算法·青少年编程
宝贝儿好5 小时前
【LLM】第三章:项目实操案例:智能输入法项目
人工智能·python·深度学习·算法·机器人
雪碧聊技术6 小时前
上午题_算法
算法·软考·软件设计师