美文网首页
2018-08-25

2018-08-25

作者: termanary | 来源:发表于2018-08-25 19:59 被阅读0次

    关于勾股数的一些想法:
    题目:2018中国大学生程序设计竞赛 - 网络选拔赛
    勾股数:维基百科

    以下的方法也可以用于找出勾股数:

    a=2*n+1;
    b=2*n*n+2*n;
    c=2*n*n+2*n+1;
    

    所产生的勾股数不完整,a均为奇数,但所有的偶数勾股数发现均可以由某个奇数勾股数乘以若干个2得到。毕竟是为了通过OJ
    依照素勾股数的定义:
    gcd(a,b)=gcd(a,c)=gcd(b,c)=gcd(a,b,c)=1
    这组数:15 112 113
    是不是应该也算呢?@维基百科

    推理过程:

    a^2+b^2=c^2
    a^2=c^2-b^2=(c+b)*(c-b)
    


    c-b=1
    求解
    c+b=a^2
    因为当a为素数时
    a^2 = (a ^2) * (1) = (a) * (a)
    c+b!=c-b!=a,故用此法。
    当a不为素数时,分解方法不唯一,可有多组勾股数,也无非是让一个二元一次方程组有整数解,可是对于计算机而言,求整数解着实不易,所以是先把偶数变为奇数再求解。


    突然发现好像百度百科上已经有了。


    引自:CSDN
    就是费马大定理,>2不存在,=0不存在,=1很好算,=2用费马大定理奇偶数列法则求解
    若a为奇数,则 a = 2n + 1 ,c = n ^ 2 + (n + 1) ^ 2 ,b = c - 1;
    若a为偶数,则 a = 2n + 2 ,c = 1 + (n + 1) ^ 2 ,b = c - 2;


    我是只知其一,不知其二,膜!!!

    相关文章

      网友评论

          本文标题:2018-08-25

          本文链接:https://www.haomeiwen.com/subject/qhggiftx.html