main.cpp

来自「我做的一些C语言练习题,里面一共有76道题目,主要用到一些计算机常用的算法,如:」· C++ 代码 · 共 35 行

CPP
35
字号
/********************************************************************************

  74. (NOI'95.1_5) m、n为整数,且满足下列两个条件:
  ① m、n∈{1, 2, …, k}, (1≤k≤109)
    ② (n^2-m*n-m^2)^2=1
    编一程序, 由键盘输入k, 求一组满足上述两个条件的 m、n, 并且使m^2+n^2
 的值最大.
    例如, 若 k=1995, 则 m=987, n=1597 时, 则 m、n 满足条件, 且可使
 m^2+n^2的值最大.

  由①,② n^2 - m^2 = m*n + 1 或 n^2 - m^2 = m*n - 1

  得 n>=m

  *******************************************************************************/

#include <stdio.h>

void main()
{
	int k;
	int m,n;
	printf("请输入k的值:");
	scanf("%d", &k);
	for(n=k; n>=1; n--)
		for(m=n; m>=1; m--)
		{
			if(n*n-m*(m+n)==1 || n*n-m*(m+n)==-1)
			{
				printf("m = %d n = %d\n",m,n);
				return;
			}
		}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?