题意:求不定方程(2*m+1)^2-8*n^2=1的最小的10个解
思路:Pell方程
代码如下:
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<iomanip>
using namespace std;
typedef long long ll;
int x[50];
int y[50];
int main(){
x[0]=17;
y[0]=6;
x[1]=99;
y[1]=35;
int d=8;
for(int i=2;i<10;++i){
x[i]=x[i-1]*3+d*y[i-1];
y[i]=x[i-1]+y[i-1]*3;
}
for(int i=0;i<10;++i){
cout<<setw(10)<<y[i]<<setw(10)<<(x[i]-1)/2<<endl;
}
return 0;
}