| Problem Description people in USSS love math very much, and there is a famous math problem .
 give you two integers n ,a ,you are required to find 2 integers b ,c such that an +bn=cn .
 ?? Input one line contains one integer T ;(1≤T≤1000000)
 next T lines contains two integers n ,a ;(0≤n≤1000 ,000 ,000,3≤a≤40000)
 ?? Output print two integers b ,c if b ,c exits;(1≤b,c≤1000 ,000 ,000) ;
 else print two integers -1 -1 instead.
 ?? Sample Input? 1 2 3 ?? Sample Output? 4 5 ? ? 費(fèi)馬大定理在加上勾股數(shù)的一些規(guī)律: 費(fèi)馬大定理: a^n+b^n=c^n在n>2時(shí)是不成立的。 勾股數(shù)規(guī)律: https://wenku.baidu.com/view/8282f1b669eae009591bec85.html ? ? #include <iostream>using namespace std;
 int main() ? ? ?{
 ?? ?int T;
 ?? ?scanf("%d",&T);
 ?? ?int n,a,b,c;
 ?? ?while(T--)
 ?? ?{
 ?? ??? ?scanf("%d %d",&n,&a);
 ?? ??? ?if(n>2||n==0)
 ?? ??? ?{
 ?? ??? ??? ?printf("-1 -1\n");
 ?? ??? ??? ?continue;
 ?? ??? ?}
 ?? ??? ?else if(n==1)
 ?? ??? ?{
 ?? ??? ??? ?printf("%d %d\n",1,a+1);
 ?? ??? ??? ?continue;
 ?? ??? ?}
 ?? ??? ?else
 ?? ??? ?{
 ?? ??? ??? ?if(a%2==0) ? ? ? ? ?//a為偶數(shù)的時(shí)候
 ?? ??? ??? ?{
 ?? ??? ??? ??? ?int temp=(a-2)/2;
 ?? ??? ??? ??? ?printf("%d %d\n",temp*temp+2*temp,temp*temp+2*temp+2);?
 ?? ??? ??? ??? ?continue;
 ?? ??? ??? ?}?
 ?? ??? ??? ?else
 ?? ??? ??? ?{
 ?? ??? ??? ??? ?int temp=(a-1)/2;
 ?? ??? ??? ??? ?printf("%d %d\n",2*temp*temp+2*temp,2*temp*temp+2*temp+1);
 ?? ??? ??? ??? ?continue;
 ?? ??? ??? ?}
 ?? ??? ?}
 ?? ?}?? ??? ??? ??? ?
 ?? ?return 0;?? ?
 }?
 ? |