hdu2281

输入一个 $N$,求最大的 $n$($n \leq N$)和 $x$,使得 $x^2 = \frac{1^2+2^2+...+n^2}{n}$.

分析:

将右边式子的分子求和化简,有:$x^2 = \frac{(n+1)(2n+1)}{6}$.

变换成:$(4n+3)^2-48x^2 = 1$.

这就是佩尔方程的形式,且样例给出了最小整数解(7, 1)。

求出long long范围内的所有解(也就9个)

#include<bits/stdc++.h>
using namespace std; typedef long long ll;
ll n;
vector<ll>nn, xx; void init()
{
ll pre_x = , pre_y = ;
nn.push_back(), xx.push_back();
for(int i;;i++)
{
ll tmpx = pre_x* + pre_y**;
ll tmpy = pre_x* + pre_y*;
if(tmpx < ) break;
if((tmpx-)% == )
{
nn.push_back((tmpx-)/);
xx.push_back(tmpy);
}
pre_x = tmpx; pre_y = tmpy;
}
nn.push_back((ll)1e18+); //设置一个边界
} int main()
{
init();
//printf("%d\n", nn.size());
while(scanf("%lld", &n) == && n)
{
for(int i = ;i < nn.size();i++)
{
if(n < nn[i])
{
printf("%lld %lld\n", nn[i-], xx[i-]);
break;
}
}
}
}

POJ 1320

题意:有 m 个编号从 1 到 m 的房子,问是否存在 1+2+3+...+ (N-1)=(N+1)+(N+2)+...+(M),求出前 10 个 n、m

分析:

将左右两端的等差数列求和,有:$(2m+1)^2-8n^2=1$

易知佩尔方程 $x^2-8y^2=1$ 的最小解为 (3, 1),按递推式可求出其他的解。

#include<cstdio>
using namespace std; int main()
{
int x = , y = ;
for(int i = ;i < ;i++)
{
int tmpx = x* + y**;
int tmpy = x* + y*;
printf("%10d%10d\n", tmpy, (tmpx-)/); //易知tmpx一定是奇数,所以不必判断
x = tmpx, y = tmpy;
}
return ;
}

参考链接:

1. https://blog.csdn.net/u011815404/article/details/88723480

2. https://blog.csdn.net/u011815404/article/details/88723187

最新文章

  1. Ubuntu W: GPG error: http://archive.ubuntukey....NO_PUBKEY 8D5A09
  2. HAProxy 实践(一)
  3. zoj3551 Bloodsucker ——概率DP
  4. .net委托(转载)
  5. EnumHelper枚举常用操作类
  6. Android ListView 第一次设置Adapter时候getView调用多次
  7. DevExpress GridControl 复合表头/表头分层设计.
  8. grep -A -B选项详解和mysqlbinlog
  9. RHEL6配置IP
  10. 像素转换mm
  11. Spring Boot 属性配置和使用
  12. wpa_cli P2P 连接相关的调试命令
  13. HDU 5240 Exam
  14. python库安装方法及下载依赖库
  15. 6、js初识
  16. java保存动态代理生成的类的class文件
  17. C# txt文件的读取与写入
  18. Python2.7-array
  19. 关于NotificationListenerService监听时有失败的处理
  20. 一个MVC4 下的验证码用法

热门文章

  1. c++ 使用 vcpkg
  2. LeetcCode 27:移除元素 Remove Element(python、java)
  3. Cookie,Session,Token and Oauth
  4. UWP 使用Launcher 启动迅雷
  5. AtCoder diverta 2019 Programming Contest 2
  6. spring-session(一)揭秘续篇
  7. redis 实战操作RDB和AOF快照持久化
  8. HTML+CSS学习笔记整理二
  9. 我得新博客上线了采用Vue+Layui的结合开发,后台采用asp.net mvc
  10. Qt实现表格树控件-支持多级表头