poj 1320 佩尔方程递推
2015-12-06 15:42
204 查看
题意:求方程 1+2+3+...+n=(n+1)+(n+2)+...+m 求这个方程的前十个正整数解,分别按格式输出。
思路:化简一下就是 (2m+1)^2 - 8n^2 =1。满足佩尔方程,令x=2m+1 ,y=n,D=8。那么 x(n)=x(n-1)*x1+D*y(n-1)*y1 y(n)=x(n-1)*y1+y(n-1)*x1。最小解是x1=3,y1=1 所以剩下就直接推十个答案出来就行了。
佩尔方程是满足x^2 - a*y^2=1形式的方程。
思路:化简一下就是 (2m+1)^2 - 8n^2 =1。满足佩尔方程,令x=2m+1 ,y=n,D=8。那么 x(n)=x(n-1)*x1+D*y(n-1)*y1 y(n)=x(n-1)*y1+y(n-1)*x1。最小解是x1=3,y1=1 所以剩下就直接推十个答案出来就行了。
佩尔方程是满足x^2 - a*y^2=1形式的方程。
#include <cstdio> #include <cstring> #include <algorithm> using namespace std; int res[15][2]; int main(){ int i,j; res[0][0] = 3; res[0][1] = 1; for(i = 1;i<=10;i++){ res[i][0] = res[i-1][0]*res[0][0] + 8*res[i-1][1]*res[0][1]; res[i][1] = res[i-1][0]*res[0][1] + res[i-1][1]*res[0][0]; printf("%10d%10d\n",res[i][1],(res[i][0]-1)>>1); } return 0; }
相关文章推荐
- jstl标签库 stuts2标签OGNL表达式
- 信息安全系统设计第十三周学习总结
- 数据注解属性--TimeStamp特性【Code-First 系列】
- 快速排序算法
- Android关于Listview左滑动删除的原理解析
- 美利金融前端技术架构杂谈
- ifndef/define/endif作用和用法
- 取石子(一)
- Swift:表格视图单元格多选
- 在Sublime Text 3中配置编译和运行Java程序
- leetcode Minimum Depth of Binary Tree python
- python解析json文件
- PAT 1009 说反话
- JaveSE-JTable 表头、数据居中显示
- 【python】python中的多态与duck typing
- Scrambled Polygon(凸多边形,斜率)
- MVVM中轻松实现Command绑定(三)任意事件的Command
- light oj 1043 Triangle Partitioning
- C 标准库 bsearch 函数的实现
- LDA(线性判别分析,Python实现)