• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 68  文章 - 57  trackbacks - 0
            <2009年6月>
            31123456
            78910111213
            14151617181920
            21222324252627
            2829301234
            567891011

            常用鏈接

            留言簿(8)

            隨筆分類(74)

            隨筆檔案(68)

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

              是個經典問題了,求滿足a ^ 2 + b ^ 2 = c ^ 2且a、b、c兩兩互質的三元組個數,其中a、b、c都小于等于n,同時還要求出n以內不屬于三元組(不必互質)的數的個數,其中n <= 1000000。
              數據范圍很大,單純的n ^ 2的枚舉肯定是不行的。我發現互質的三元組不多,想找一個辦法求出互質的,然后篩出其他的三元組(乘以倍數),但是仍然想不出怎樣很快找到互質的三元組。到網上查了一下,找到了一個很好的網站(http://xserve.math.nctu.edu.tw/people/cpai/carnival/fraction/05.htm)講解這個問題。
              首先只需找到互質的a和b就可以了,其余的可以通過乘以一定的倍數得到。首先a和b必須不能都是奇數,否則的話,不妨設a = 2p + 1, b = 2q + 1, c = 2r。帶入a ^ 2 + b ^ 2 = c ^ 2有:2 * (r ^ 2 - p ^ 2 - q ^ 2 - p - q) = 1,出現了矛盾。這樣必然a和b一奇一偶,設a是偶數。恒等變換一下:(這里是x ^ 2 + y ^ 2 = z ^ 2,x是偶數)


              令u = (z - y) / 2,v = (z + y) / 2。因為y、z互質,那么u、v互質。如果不互質,有v = ku,變換后得到:z / y = (k + 1) / (k - 1)。因為z和y互質,這樣這個等式的解只能是z = k + 1且y = k - 1。這樣的話u = 1。可以理解為這也是互質的特殊情況(gcd = 1)。這樣(x / 2) ^ 2 = u * v,u和v沒有公共的質因數,因此必然u和v都是完全平方數。接下來的事情就比較簡單了,令u = m ^ 2,v = n ^ 2,然后利用m和n表示x、y、z有:y = n ^ 2 - m ^ 2,x = 2 * m * n,z = n ^ 2 + m ^ 2。這樣題目中數據范圍1000000,而枚舉m和n的范圍最大1000,這個復雜度就可以接受了。枚舉的時候不用擔心出現重復的互質的x與y,因為這里x一定是偶數,如果x和y已經互質,那么y一定是奇數,解是唯一的。
              很囧的是這個巧妙的方法居然公元前250年就有大牛想到了(丟番圖),實在orz!

             

            posted on 2009-06-09 09:09 sdfond 閱讀(333) 評論(0)  編輯 收藏 引用 所屬分類: Algorithm - Number Theory
            欧美国产精品久久高清| 91精品国产91久久综合| 2021最新久久久视精品爱| 久久久久国产精品嫩草影院| 久久久久无码精品国产| 久久久久人妻精品一区三寸蜜桃| 四虎久久影院| 久久综合九色综合97_久久久| 少妇被又大又粗又爽毛片久久黑人 | 色婷婷综合久久久久中文字幕| 精品无码久久久久国产动漫3d| 欧美精品一本久久男人的天堂| 日本欧美国产精品第一页久久| A狠狠久久蜜臀婷色中文网| 99久久人人爽亚洲精品美女| 伊人久久大香线蕉亚洲五月天 | 久久99精品久久久久久9蜜桃| 久久夜色精品国产噜噜亚洲a| 久久国产精品-久久精品| 亚洲精品无码久久久久sm| 人人狠狠综合88综合久久| 91精品国产高清久久久久久国产嫩草| 国产精品99久久久精品无码| 免费一级欧美大片久久网| 天天久久狠狠色综合| 国产高潮国产高潮久久久| 漂亮人妻被中出中文字幕久久| 久久免费国产精品| 国产综合精品久久亚洲| 国内精品久久久久影院网站| 日本久久久久久中文字幕| 久久91精品国产91久久小草| 99国产精品久久| 亚洲午夜精品久久久久久人妖| 国产成人精品白浆久久69| 看久久久久久a级毛片| 午夜久久久久久禁播电影| 人妻无码精品久久亚瑟影视 | 一本大道加勒比久久综合| 香蕉久久夜色精品国产小说| 精品国产热久久久福利|