HDU——4342(数论)

来源:互联网 发布:linux ant 配置 编辑:程序博客网 时间:2024/05/18 00:52

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4342


源代码:

#include<iostream>
#include<stdio.h>
#include<math.h>
using namespace std;
int main()
{
int test;
int n;
long long mid;
long long i,j;
long long sum;
long long m;
while(cin>>test)
{
while(test--)
{
 sum=0;
 cin>>n;
 long long mid2 =sqrt(n*1.0); 
 while((long long)sqrt((double)(n+mid2)) != mid2)  //高明 
  mid2++;
 n = n+ mid2;
 cout<<n<<" ";
 
 mid=sqrt((double)n+1.0)-1.0;
 for(i=1;i<=mid;i++)
   {
   sum+=(2*i+1)*i;
 }
 sum+=(n-mid*mid-2*mid)*(mid+1);
 cout<<sum<<endl;
}
}

原创粉丝点击