HOJ_6441:Find Integer 费马大定理

2018中国大学生程序设计竞赛 - 网络选拔赛

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

代码:

//hoj_6441
#include<iostream>
#include<cmath>
using namespace std;

int main()
{
	int t,n,a;
	long long b,c;
	cin>>t;
	for(int i=1;i<=t;i++)
	{
		scanf("%d%d",&n,&a);
		if(n>2||n==0)
		printf("-1 -1\n");
		else if (n==1)
		{
			printf("1 %d\n",a+1);
		}
		else if(n==2)
		{
			if (a%2!=0)//ji
			{
				b=a*a/2;
				c=b+1;
			}
			else if (a%2==0)//ou
			{
				if (a%4==0)
				{
					b=a/4*3;
					c=a/4*5;
				}
				else
				{
					b=(a/2)*(a/2)-1;
					c=((a/2)*(a/2)/2+1)*2;
				}
			}
		printf("%lld %lld\n",b,c);
		}
	}

	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_42173572/article/details/82155779
今日推荐