题目链接: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. J20170507-ts

    プロンプト n. 提示 オブジェクト n. 对象 アスタリスク *  アンパサンド      & スラッシュ       / イテレータ    n 迭代器 差し詰め 当前 スペル spell ...

  2. android 四大组件详解

    这个文章主要是讲Android开发的四大组件,本文主要分为 一.Activity详解二.Service详解三.Broadcast Receiver详解四.Content Provider详解外加一个重 ...

  3. poj3176【简单DP】

    其实就是简单递推对吧~ 贴一发记忆化搜索的- #include <iostream> #include <stdio.h> #include <string.h> ...

  4. 洛谷 P3711 仓鼠的数学题【伯努利数+多项式科技】

    有个东西叫伯努利数--一开始直接·用第一类斯特林推到自闭 式子来源:https://www.luogu.org/blog/ShadowassIIXVIIIIV/solution-p3711 https ...

  5. poj 2960 S-Nim【SG函数】

    预处理出SG函数,然后像普通nim一样做即可 #include<iostream> #include<cstdio> using namespace std; const in ...

  6. poj 1743 Musical Theme【二分+SA】

    差分,然后二分长度mid,判断是把height按照min不小于mid分组,取最大最小的sa位置看是否>=mid即可,注意差分后最后答案要+1 #include<iostream> # ...

  7. 第十七篇 .NET高级技术之XML

    Xml 简介(可扩展标记语言) XML优点:容易读懂:格式标准任何语言都内置了XML分析引擎,不用单独进行文件分析引擎的编写. Xml就是用一种格式化的方式来存储数据,我们可以通过用记事本打开. .n ...

  8. 深入解读docker网络与kubernetes网络

    前言:你是否学习使用k8s很久很久了可是对于网络这块仍旧似懂非懂呢? 您是否对网上一堆帖子有如下的抱怨: 打开多个博客,然后发现有区别么? 明显是直译过来的,越看越迷糊 “因为xxx,所以yyy”,. ...

  9. JSR 303 - Bean Validation 模型验证

    类是转载的,不知道转的哪里的. 此类依赖 JSR 303 – Bean Validation, Hibernate Validator. 代码不能直接运行.意会一下.自己改改. import com. ...

  10. Asp.net core 框架整理

    https://github.com/thangchung/awesome-dotnet-core#cms