题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6441(本题来源于2018年中国大学生程序设计竞赛网络选拔赛)

题意:输入n和a,求满足等式a^n+b^n=c^n的b,c的值

思路:

首先我们要知道什么是费马大定理

百度词条

费马大定理,又被称为“费马最后的定理”,由17世纪法国数学家皮耶·德·费马提出。
他断言当整数n >2时,关于x, y, z的方程 x^n + y^n = z^n 没有正整数解
德国佛尔夫斯克曾宣布以10万马克作为奖金奖给在他逝世后一百年内,第一个证明该定理的人,吸引了不少人尝试并递交他们的“证明”。
被提出后,经历多人猜想辩证,历经三百多年的历史,最终在1995年被英国数学家安德鲁·怀尔斯彻底证明
 
因此,只需讨论n=1,n=2两种情况,其余的n值直接输出"-1 -1"
①n=1
等式相当于a+b=c,直接输出"1 a+1"
②n=2
等式相当于a^2+b^2=c^2,此时需要探索勾股数奇偶性的规律(原文链接:https://wenku.baidu.com/view/8282f1b669eae009591bec85.html)
 
 
A.当勾(a)为奇数时
a.列表
b.归纳规律
(1)每组中a都是奇数
c.证明
 
B.当a(勾)为偶数时
a.列表
b.归纳规律
(1)每组中a(勾)是偶数,(第一组较特殊,勾比股大)
c.证明
由上可以总结出奇偶数列法则
定理:如a^2+b^2=c^2是直角三角形的三个整数边长,则必有如下a值的奇数列、偶数列关系成立;
(一)直角三角形a^2+b^2=c^2的奇数列a法则 
若a为2n+1型奇数,则a为奇数列平方整数解的关系是:
a=2n+1  b=n^2+(n+1)^2-1  c=n^2+(n+1)^2
(二)直角三角形a^2+b^2=c^2的偶数列a法则:
若a为2n型偶数,则a为偶数列平方整数解的关系是:
a= 2n+2  b=n^2+2n  c=n^2+2n+2
 
标准程序:
 #include<bits/stdc++.h>
using namespace std;
int main()
{
long long n,a,z,i;
scanf("%lld",&i);
while(i--)
{
scanf("%lld%lld",&n,&a);
if(n==)
printf("1 %lld\n",a+);
else if(n==)
{
z=a*a;
if(a%==)
{
z=z/;
printf("%lld %lld",z,z+);
}
else if(a%==)
{
z=z/;
printf("%lld %lld\n",z-,z+);
}
}
else printf("-1 -1\n");
}
return ;
}
 

hdu 6441 Find Integer(费马大定理+勾股数)的更多相关文章

  1. HDU 6441 - Find Integer - [费马大定理][2018CCPC网络选拔赛第4题]

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6441 Time Limit: 2000/1000 MS (Java/Others) Memory Li ...

  2. hdu 6441 (费马大定理+勾股数 数学)

    题意是给定 n 和 a,问是否存在正整数 b,c 满足:a^n + b^n == c^n.输出 b  c,若不存在满足条件的 b,c,输出 -1 -1. 当 n > 2 时,由费马大定理,不存在 ...

  3. HDU 6441 费马大定理+勾股数

    #include <bits/stdc++.h> #define pb push_back #define mp make_pair #define fi first #define se ...

  4. hdu6441 Find Integer 求勾股数 费马大定理

    题目传送门 题目大意: 给出a和n,求满足的b和c. 思路: 数论题目,没什么好说的. 根据费马大定理,当n>2时不存在正整数解. 当n=0或者1时特判一下就可以了,也就是此时变成了一个求勾股数 ...

  5. 数学--数论--Find Integer(勾股数定理)

    Problem Description people in USSS love math very much, and there is a famous math problem give you ...

  6. 【2018 CCPC网络赛 1004】Find Integer(勾股数+费马大定理)

    Problem Description people in USSS love math very much, and there is a famous math problem . give yo ...

  7. 题解报告:hdu 6441 Find Integer(费马大定理+智慧数)

    Problem Description people in USSS love math very much, and there is a famous math problem .give you ...

  8. 2015浙工大校赛-Problem C: 三角—— 费马大定理+勾股数

    题目 有一个直角三角形三边为 A,B,C 三个整数.已知 C 为最长边长,求一组B,C,使得B和C最接近. (题目链接) 分析 打表找规律. 或者直接一点的枚举 $C-B$ 的值.(既然枚举 B 不现 ...

  9. 2018中国大学生程序设计竞赛 - 网络选拔赛 4 - Find Integer 【费马大定理+构造勾股数】

    Find Integer Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Tota ...

随机推荐

  1. Javascript中的回调函数和匿名函数的回调示例介绍

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  2. Java简单高精度合集

    第一个Java的算法程序.记得可以使用Alt+'/'自动补全sysout和main之类的. BigInteger在java.math.BigInteger中. import java.math.Big ...

  3. Codeforces - 346A - Alice and Bob - 简单数论

    http://codeforces.com/problemset/problem/346/A 观察了一下,猜测和他们的最大公因数有关,除以最大公因数前后结果是不会变的. 那么怎么证明一定是有n轮呢?我 ...

  4. thrift配置——windows客户端与linux服务端通信(C++)

    windows客户端: 1.首先要安装boost库 下载源文件 2.安装boost之前先要安装python-3.4.0.amd64,很多地方没有说,弄了很久 3.运行bootstrap.bat 生成b ...

  5. Codeforces645C【二分】

    题意: 给你一个序列,0表示空,1表示非空 你需要填k+1个位置,然后找出某一点到其他所有点都是最近的,然后输出一个最近的情况的最远点. 思路: 哎,好菜哦...不会写这个二分... 遍历每个可取的位 ...

  6. NOIp2017真题模拟赛 By cellur925

    果然我还是最菜的==不接受反驳 (先考了day2喵喵喵) Day2 T1:奶酪 期望得分:100分 实际得分:100分 考察:并查集 思路:这题其实之前做过了==.思路还是比较清晰的,读入时预处理出可 ...

  7. 跟我一起玩Win32开发(1):关于C++的几个要点

    我不知道各位,一提起C++,第一感觉是什么?而据俺的观察,许多人几乎成了“谈C色变”.不管是C还是C++,一直以来都被很多人视为相当难学的玩意儿,幸好只是一个C++,没有C--,C**和C//,不然, ...

  8. Python while 1 和 while True 速度比较

    References http://legacy.python.org/dev/peps/pep-0285/http://stackoverflow.com/questions/3815359/whi ...

  9. UVALive - 6428(扩展欧几里德)

    http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=48388 前段时间偶然碰到的一道题,今天突然想到没把它记录下来. 比较不错的扩 ...

  10. <meta>详解

    一.元数据和<meta> 元数据是描述以提供关于其他数据的数据,在<meta>中,html document是被描述的数据,meta标签中包括的数据是描述html docume ...