标签:
#include <iostream> using namespace std; #define int_sqrt\ b=(d=0x0000000080000000); if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d;d>>=1; b|=d;if((b*b)>n) b^=d; unsigned long long n,a,b,d; bool n_prime(){ if(n<4) return (1<n); if(!(n%2&&n%3)) return false; int_sqrt;a=1;--b; while(a<b){ a+=4; if(!(n%a)) return false; a+=2; if(!(n%a)) return false; } return true; } int main(){ for(n=0x8000000000000000;n<0xfffffffffffffff0;++n){ if(n_prime()) cout<<n<<‘\n‘; } }
标签:
原文地址:http://www.cnblogs.com/TheName/p/5347898.html