题目链接: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. Codeforces702A - Maximum Increase【尺取】

    题意: 求一个连续的最长子序列长度: 思路: 没看仔细还wa1了-以为LIS- 然后写了尺取吧...= =太不仔细了.不过收获是LIS特么写挫了然后看了学长的blog<-点我- 题目的挫code ...

  2. poj1163 【记忆化搜索·水】

    题意: 一个这样的三角形,他可以往下的左或者往下的右走.求一个在最后一行的最大. 思路: 额...就是搜一下..记录一下...肯定有重合的情况. code- //#include <bits/s ...

  3. HDOJ1864(水的可怜)

    注意这句话:精确到小数点后两位如果是小数点的话 HDOJ1864 #include<stdio.h> #include<iostream> #include<algori ...

  4. hdoj1028;他们说这题叫dp...

    #include<cstdio> #include<string> #include<iostream> #include<vector> #inclu ...

  5. bzoj 4551: [Tjoi2016&Heoi2016]树【并查集】

    看起来像是并查集,但是是拆集合,考虑时间倒流,先把标记都打上,然后把并查集做出来 每次到一个修改点就把这个点的计数s[u]--,当这个s为0时就把这个点和他的父亲合并(因为可能有多次标记) #incl ...

  6. Python解释器的安装步骤

    Python是一门强大的语言,目前已支持所有主流操作系统,在Linux,Unix,Mac系统上自带Python环境,在Windows10系统上需要安装一下,超简单 1.  打开官网 https://w ...

  7. Beta版本冲刺第三天!

    该作业所属课程:https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2 作业地址:https://edu.cnblogs.com/c ...

  8. Python之单元测试——HTMLTestRunner

    前置条件:把HTMLTestRunner.py文件拷贝到External Libraries—>site-packages里面 import unittestimport HTMLTestRun ...

  9. 在vue组件的stylus样式总 取消search类型的input按钮中默认样式

    在vue组件的stylus样式中 取消search类型的input按钮中默认样式 记录一个坑 环境 Vue组件 使用了Stylus的CSS风格. 问题 input输入框使用了 type="s ...

  10. JavaScript--字符串常用方法总结

    JavaScript--字符串常用方法总结 举例模板: var str = "what are you " var str1 = "sss" var txt = ...