【9308】极值问题

news/2024/10/30 17:30:08/

Time Limit: 10 second
Memory Limit: 2 MB

问题描述
已知m,n为整数,且满足下列两个条件:
1、m、n∈{1,2…,k},即1≤m,n≤k;
2、(n^2-m*n-m^2)^2=1。
编程输入正整数k(1≤k≤10^9),求一组满足上述两个条件的m,n,并且使得n^2+m^2的值最大。
Input

输入正整数k

Output

输出满足最大值的m和n

Sample Input

100

Sample Output

m=55
n=89

【题目链接】:http://noi.qz5z.com/viewtask.asp?id=9308

【题解】

(n^2-m*n-m^2)^2=1
(m^2+m*n-n^2)^2=1
(m^2+2*m*n+n^2-m*n-2*n^2)^2=1
(m^2+2*m*n+n^2-m*n-n^2-n^2)^2=1
(m^2+2*m*n+n^2-n*(m+n)-n^2)^2=1
((m+n)^2-n*(m+n)-n^2)^2=1
则令n’=(m+n),m’=n;
(n’^2-m’*n’-m’^2)^2=1
所以如果n和m是符合要求的解;
则n=(m+n)和m=n也是方程的解;
而由观察可知n=1,m=1是方程的解
所以n=2,m=1也是方程的解;
则n=3;m=2也是方程的解。。
就是斐波那契数列了;
递推下就好;

【完整代码】

#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <set>
#include <map>
#include <iostream>
#include <algorithm>
#include <cstring>
#include <queue>
#include <vector>
#include <stack>
#include <string>
using namespace std;
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
#define LL long long
#define rep1(i,a,b) for (int i = a;i <= b;i++)
#define rep2(i,a,b) for (int i = a;i >= b;i--)
#define mp make_pair
#define pb push_back
#define fi first
#define se secondtypedef pair<int,int> pii;
typedef pair<LL,LL> pll;void rel(LL &r)
{r = 0;char t = getchar();while (!isdigit(t) && t!='-') t = getchar();LL sign = 1;if (t == '-')sign = -1;while (!isdigit(t)) t = getchar();while (isdigit(t)) r = r * 10 + t - '0', t = getchar();r = r*sign;
}void rei(int &r)
{r = 0;char t = getchar();while (!isdigit(t)&&t!='-') t = getchar();int sign = 1;if (t == '-')sign = -1;while (!isdigit(t)) t = getchar();while (isdigit(t)) r = r * 10 + t - '0', t = getchar();r = r*sign;
}//const int MAXN = x;
const int dx[9] = {0,1,-1,0,0,-1,-1,1,1};
const int dy[9] = {0,0,0,-1,1,-1,1,-1,1};
const double pi = acos(-1.0);LL sqr(LL x)
{return x*x;
}LL k;int main()
{// freopen("F:\\rush.txt","r",stdin);cin >> k;LL a = 1,b = 1,c;while ((a+b)<=k){c = a+b;a = b;b = c;}cout << "m="<<a<<endl;cout << "n="<<b<<endl;return 0;
}

http://www.ppmy.cn/news/115683.html

相关文章

三星i9308安卓4.3实用锁定2g/3g的方法

方法可行(转自TD): 首先在拨号键盘输入*#9090#&#xff0c;进入后按左键&#xff0c;点back&#xff08;可能没反应&#xff09;&#xff0c;然后再按左键&#xff0c;点key input&#xff0c;这时让你输入东西&#xff0c;我们就输入:00000000(8个0&#xff09;&#xff0c;然…

三星I9308手机secsetpwizard错误解决

简单记录三星手机GT-I9308的使用随感。它是中国移动定制3G手机&#xff0c;1G RAM16G ROM。 屏幕色彩艳丽&#xff0c;比华为、中兴屏幕视觉更舒服&#xff0c;不过各人各好。 到手后&#xff0c;尝试多种root软件&#xff0c;最后使用360一键root大师&#xff0c;成功root。 删…

三星I9308(移动版)正确​Root的方法,进入正确的recovery的关键(网上很多方法是误导)...

三星I9308(移动版)正确​Root的方法&#xff0c;进入正确的recovery的关键&#xff08;网上很多方法是误导&#xff09; 1)首先在电脑上安装手机驱动&#xff1a;下载地址&#xff1a;点击这里下载 2&#xff09;手机设置USB调试 方法1&#xff1a;设置--开发者选项--USB调试[…

Samsung/三星I9308(GALAXY S3移动版) root教程_方法

Samsung/三星I9308(GALAXY S3移动版)的root教程在这里整理了一下&#xff0c;之前有机友说自己的手机想删除系统自带的一些无用软件&#xff0c;可是怎么也删除不了&#xff0c;所以需要先进行root才可以删除&#xff0c;不然的话是 删除不了的&#xff0c;这个方法也是大家在r…

三星GT-I9308 Galaxy SIII 移动定制机 root方法 (亲测可用)

我公司开发部老大&#xff0c;最近换了一步手机&#xff0c;三星Galaxy SIII GT-I9308&#xff0c;拿给测试人员测试安卓&#xff21;&#xff30;&#xff30;&#xff0c; 谁知道wifi连接不了&#xff0c;但是其它笔记本都可以正常上网&#xff0e;我拿来一看&#xff0c;原…

三星i9308刷机笔记

必备软件清单&#xff1a; Samsung USB Driver for Mobile Phones&#xff0c;三星手机驱动程序。 CF-SGS3-CWM-v5.5-v1.2.tar&#xff0c;或CF-Root-SGS3-v6.4.tar&#xff0c;Recovery程序。 Odin3&#xff0c;线刷程序。 root.zip&#xff0c;三星手机的root程序&#xff0c…

vue项目集成乾坤(qiankun)微前端

vue项目集成qiankun微前端 集成乾坤微前端主应用&#xff1a;1.安装2.main.js中进行配置3.配置路由4.将主应用路由模式设置为history模式 子应用中配置&#xff08;子应用无需安装乾坤&#xff09;1.在src目录下增加public-path.js文件2.在main.js中写入生命周期函数3.在vue.co…

华硕原厂系统

华硕重装系统&#xff0c;恢复出厂系统。 自带奥创中心和所有驱动&#xff0c;带恢复分区&#xff0c;工程模式重装&#xff0c;华硕原厂正版&#xff0c;远程安装。 飞行堡垒原厂系统&#xff0c;幻14&#xff0c;幻16原厂系统。华硕魔霸原厂系统。华硕枪神原厂系统。 远程…