[TYVJ1334] powermax
2015-07-26 21:53
169 查看
powermax
描述
对于一个整数K,有很多组数对(M,N)满足如下两个性质:1.1<=M<=N<=K
2.(N^2-MN-M^2)^2=1
求一对(M,N)使M^2+N^2最大.
输入格式
一个整数K输出格式
两个整数M,N输入
1995输出
987 1597备注
时限0.5s1<=k<=10^9
题解
(n2−nm−m2)2=1——[1](n^2-nm-m^2)^2=1 ——[1]=>((n+m)2−n(n+m)−n2)2=1——[2]=> ((n+m)^2-n(n+m)-n^2)^2=1 ——[2]
假设一个函数F[a]假设一个函数F[a]
若max(n2+m2),那么n与m最接近(m≤n≤k)若max(n^2+m^2),那么n与m最接近(m\le n\le k)
所以我们再假设m=F[x] n=F[x+1]所以我们再假设m=F[x]\ \ \ \ n=F[x+1]
所以对于[1]式我们得到=>(F[x+1]2−F[x+1]∗F[x]−F[x]2)2=1——[3]所以对于[1]式我们得到\\ =>(F[x+1]^2-F[x+1]*F[x]-F[x]^2)^2=1——[3]
然后我们把式子[3]与式子[2]对应,我们得到F[y+1]=n+m=F[x+1]+F[x]F[y]=n=F[x+1]F[y+1]−F[y]=m=F[x]然后我们把式子[3]与式子[2]对应,我们得到\\F[y+1]=n+m=F[x+1]+F[x]\\ F[y]=n=F[x+1]\\ F[y+1]-F[y]=m=F[x]
[捂脸]有点蒙QAQ
F[a]为斐波那契数列
var x:array[0..50]of longint; i,j,k:longint; begin readln(k); x[0]:=1; x[1]:=1; for i:=2 to 100 do begin x[i]:=x[i-1]+x[i-2]; if x[i]>k then begin writeln(x[i-2],' ',x[i-1]); halt; end; end; end.
相关文章推荐
- 为什么32位的win2003服务器系统支持超过4G甚至更多的内存
- 博客搬家说明
- Spring整合JMS(一)——基于ActiveMQ实现
- Solr 官方文档----SolrCloud
- 《极客学院 --NSAttributedString 使用详解-4-UITextKit 简介》学习笔记(待处理)
- shell的特殊变量及如何查看当前shell
- 小W与网格
- 数据在内存中的存储方式
- 五布局之帧布局FrameLayout
- SHELL--基本语法
- Cocos2d:使用 CCCamera 做滚动效果 (Four Ways of Scrolling with Cocos2D)
- block作为类的属性时用copy
- hadoop 2.6.0 安装及实例 详细有截图
- 有关string.h头文件的常用函数
- SHELL--基本命令
- Unique Binary Search Trees II
- 解决HDU爆栈的问题
- hdu 1505 City Game dp
- python对文件的基本操作
- ROS学习--(五)编译ROS Package