青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 97, 文章 - 22, 評論 - 81, 引用 - 0
數(shù)據(jù)加載中……

Pku 3209 From Pythagoras to …(數(shù)論)

問題描述:
給定一個數(shù),問它是否能夠表示成兩個整數(shù)的平方和。
解題思路:
費馬平方和定理的表述是:奇素數(shù)能表示為兩個平方數(shù)之和的充分必要條件是該素數(shù)被4除余1。
于是一個素數(shù)p = 4n+1或者p = 2則必定能表示成兩個平方數(shù)之和。
同樣可以推導出如果兩個數(shù)均能表示成兩個平方數(shù)之和,則他們的乘積必定能表示成兩個平方數(shù)之和:
p = a^2 + b^2;
q = c^2 + d^2;
p*q = (a^2 + b^2)(c^2 + d^2) = (ac)^2 + (ad)^2 + (bc)^2 + (bd)^2 = (ac + bd)^2 + (ac - bd)^2
只要將所求數(shù)分解素因子,然后對于每個素數(shù)看是否滿足條件,一旦有一個素因子不滿足費馬平方和定理則直接輸出"NO",全部滿足則輸出"YES"

代碼如下:

#include 
<iostream>
#include 
<cstdlib>
#include 
<cmath>
#define gcc 10007
typedef __int64 Int;
#define MAX ((Int)1<<63)-1

using namespace std;

Int p[
10= {2357111317192329};

Int Gcd(Int a, Int b)
{
    Int m 
= 1;
    
while(m)
    
{
        m 
= a % b;
        a 
= b;
        b 
= m;
    }

    
return a;
}


//計算a*b%n
inline Int Produc_Mod(Int a, Int b, Int mod)
{
    Int sum 
= 0;
    
while(b)
    
{
        
if(b & 1) sum = (sum + a) % mod;
        a 
= (a + a) % mod;
        b 
/= 2;
    }

    
return sum;
}


//計算a^b%n
inline Int Power(Int a, Int b, Int mod)
{
    Int sum 
= 1;
    
while(b)
    
{
        
if(b & 1) sum = Produc_Mod(sum, a, mod);
        a 
= Produc_Mod(a, a, mod);
        b 
/= 2;
    }

    
return sum;
}


//Rabin_Miller判素
bool Rabin_Miller(Int n)
{
    
int i, j, k = 0;
    Int u, m, buf;
    
//將n-1分解為m*2^k
    if(n == 2)
        
return true;
    
if(n < 2 || !(n & 1))
        
return false;
    m 
= n-1;
    
while(!(m & 1))
    
{
        k
++;
        m 
/= 2;
    }

    
for(i = 0; i < 9; i++)
    
{
        
if(p[i] >= n)
            
return true;

        u 
= Power(p[i], m, n);
        
if(u == 1)
            
continue;
        
for(j = 0; j < k; j++)
        
{
            buf 
= Produc_Mod(u, u, n);
            
//看是否有非平凡因子存在
            if(buf == 1 && u != 1 && u != n-1)
                
return false;
            u 
= buf;
        }

        
//如果p[i]^(n-1) % n != 1 那么 n為合數(shù)
        if(u-1)
            
return false;
    }

    
return true;
}


Int Pollard_rho(Int n)
{
    
while(1)
    
{
        
int i = 1;
        Int x 
= rand() % (n-1+ 1;
        Int y 
= x;
        Int k 
= 2;
        Int d;
        
do{
            i
++;
            d 
= Gcd(n + y - x, n);
            
if(d > 1 && d < n)
                
return d;
            
if(i == k)
                y 
= x, k *= 2;
            x 
= (Produc_Mod(x, x, n) + n - gcc) % n;
        }
while(y != x);
    }

}


Int prime[
10000];
int top;

void Prime_Divisor(Int key)
{
    
if( Rabin_Miller(key) )
    
{
        prime[ top 
++ ] = key;
    }
else
    
{
        Int buf 
= Pollard_rho(key);

        
if( Rabin_Miller(buf) ){
            prime[ top 
++ ] = buf;
        }
else{
            Prime_Divisor(buf);
        }



        
if( Rabin_Miller(key / buf) ){
            prime[ top 
++ ] = key / buf;
        }
else{
            Prime_Divisor(key 
/ buf);
        }

    }

}

int main()
{
    
int t, i;
    Int n;
    scanf(
"%d"&t);
    
while(t--)
    
{
        scanf(
"%I64d"&n);
        
if(n < 0)
            printf(
"NO\n");
        
else if(n == 0 || n == 1)
            printf(
"YES\n");
        
else 
        
{
            top 
= 0;
            Prime_Divisor(n);

            
for(i = 0; i < top; i++)
                
if( prime[i] != 2 && (prime[i] - 1% 4 )
                    
break;
            
if(i < top)
                printf(
"NO\n");
            
else
                printf(
"YES\n");
        }

    }

}

posted on 2009-02-10 21:04 英雄哪里出來 閱讀(389) 評論(0)  編輯 收藏 引用 所屬分類: ACM

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            91久久久久久久久| 99re成人精品视频| 久久成人资源| 午夜一区二区三区不卡视频| 国产精品区免费视频| 亚洲影视在线| 夜夜嗨av一区二区三区网页| 国产精品高潮粉嫩av| 亚洲一区日本| 欧美一级片在线播放| 好吊日精品视频| 欧美成人中文| 欧美日韩综合网| 久久精品一区二区三区不卡| 蜜臀久久99精品久久久久久9| 亚洲经典三级| 一本色道久久加勒比88综合| 国产精品日韩在线一区| 美女网站久久| 欧美激情精品久久久久久变态| 亚洲天堂av电影| 香蕉视频成人在线观看| 91久久精品网| 亚洲桃花岛网站| 伊人成年综合电影网| 99视频热这里只有精品免费| 国产欧美日韩视频一区二区三区| 欧美a级一区| 国产精品久久久久久久一区探花 | 99re66热这里只有精品3直播| 欧美日韩中字| 麻豆精品在线视频| 欧美日韩一区二区免费视频| 久久精品日韩| 欧美精品综合| 蜜乳av另类精品一区二区| 欧美日韩中文另类| 老司机午夜精品视频| 欧美日韩一区二区三| 另类春色校园亚洲| 欧美午夜精品伦理| 亚洲第一成人在线| 国产精品夜夜夜| 亚洲人成在线影院| 在线精品视频一区二区三四| 亚洲一区二区三区色| 99国产精品久久| 久久亚洲一区二区| 久久爱www久久做| 欧美视频中文在线看 | 亚洲国产日韩综合一区| 亚洲综合国产| 亚洲小视频在线| 欧美劲爆第一页| 欧美福利视频在线| 影音先锋久久久| 欧美一区二区三区成人 | 国产精品视频xxxx| 亚洲精品日本| av不卡在线观看| 免费91麻豆精品国产自产在线观看| 久久九九免费视频| 国产精品日韩久久久| 亚洲一区二区三区免费在线观看| 99视频有精品| 欧美日韩视频专区在线播放| 亚洲精品视频在线观看网站| 日韩天堂av| 欧美日韩国产一区精品一区| 亚洲欧洲精品一区二区三区波多野1战4| 国模吧视频一区| 午夜精品久久久久久99热| 欧美与黑人午夜性猛交久久久| 国产精品国产自产拍高清av王其| 一区二区国产在线观看| 亚洲综合色婷婷| 国产精品理论片在线观看| 亚洲一区在线观看视频| 久久大逼视频| 尤物九九久久国产精品的分类| 另类综合日韩欧美亚洲| 亚洲国产精品欧美一二99| 99国产一区| 国产精品视频午夜| 欧美在线视频a| 欧美福利在线| 亚洲一区二区少妇| 国产一区二区电影在线观看| 麻豆国产va免费精品高清在线| 亚洲国产成人在线播放| 亚洲一区二区在| 激情久久久久久久| 欧美成人久久| 亚洲一区在线播放| 免费成人高清视频| 在线综合视频| 国产一区清纯| 欧美福利在线观看| 亚洲欧美久久| 亚洲福利视频二区| 亚洲欧美中文日韩v在线观看| 国产欧美精品在线| 欧美顶级艳妇交换群宴| 一本色道久久加勒比88综合| 久久久亚洲影院你懂的| 亚洲精品一区二区三区蜜桃久| 国产精品白丝av嫩草影院| 久久精品首页| 亚洲一区二区精品视频| 免费观看在线综合色| 亚洲免费一级电影| 亚洲国产成人tv| 国产精品亚洲美女av网站| 欧美高清视频免费观看| 午夜欧美理论片| 日韩午夜在线观看视频| 欧美v国产在线一区二区三区| 午夜精品区一区二区三| 亚洲黄色毛片| 黄色欧美日韩| 国产精品视区| 欧美日韩视频一区二区三区| 美女网站在线免费欧美精品| 欧美在线视频免费观看| 亚洲视频综合| 日韩一区二区电影网| 亚洲国产成人久久| 鲁大师成人一区二区三区 | 国产精品一区视频| 欧美激情二区三区| 久久久另类综合| 欧美中文字幕视频在线观看| 亚洲男人第一av网站| 一区二区日韩| 最新国产成人av网站网址麻豆| 蜜臀久久久99精品久久久久久| 欧美一区二区三区成人| 亚洲一区二区欧美| 亚洲视频高清| 亚洲小说欧美另类婷婷| 亚洲网站在线播放| 亚洲午夜羞羞片| 亚洲一区二区三区四区在线观看 | 欧美午夜精品伦理| 欧美日韩久久不卡| 欧美不卡在线| 欧美成人一区二区| 欧美激情一二三区| 欧美精品福利视频| 欧美人与禽性xxxxx杂性| 欧美日韩国产成人在线| 欧美日韩视频免费播放| 欧美日韩亚洲另类| 国产精品久久久久9999| 国产伦精品一区二区三区| 国产精品一区二区黑丝| 国产一级揄自揄精品视频| 激情综合中文娱乐网| 亚洲国产岛国毛片在线| 亚洲精品孕妇| 亚洲少妇自拍| 欧美在线观看一区二区| 久久欧美中文字幕| 欧美成人69| 99精品国产99久久久久久福利| 在线视频你懂得一区二区三区| 亚洲宅男天堂在线观看无病毒| 欧美在线免费观看亚洲| 久久综合免费视频影院| 欧美日韩p片| 国产精品自在欧美一区| 亚洲高清三级视频| 亚洲一区二区毛片| 久久久久久精| 亚洲精品免费网站| 亚洲综合99| 麻豆九一精品爱看视频在线观看免费| 欧美日韩成人免费| 国产欧美一区二区三区久久人妖| 亚洲高清成人| 亚洲欧美国产日韩天堂区| 美女久久网站| 99视频精品全部免费在线| 久久se精品一区精品二区| 欧美福利一区| 国产一区二区三区四区| 亚洲视频日本| 欧美成人国产va精品日本一级| 99精品欧美一区二区三区综合在线| 欧美一区视频在线| 欧美日韩八区| 亚洲成色www8888| 欧美伊人影院| 日韩视频一区二区在线观看| 久久久久国色av免费观看性色| 欧美人与禽猛交乱配视频| 在线播放视频一区| 午夜精品区一区二区三| 91久久精品美女| 久久人人爽爽爽人久久久|