标签:
处理n!,首先想到斯特林公式。
1 #include <iostream> 2 #include <cmath> 3 using namespace std; 4 double const pi=3.1415926; 5 double const e=2.718281828459; 6 7 int main() 8 { 9 int y; 10 while(cin>>y&&y) 11 { 12 int bit=pow(2,(y-1960)/10+2); 13 int n=2; 14 while(n++) 15 { 16 double t=0.5*log2(2*pi*n)+n*log2(n/e); 17 if(t>bit) break; 18 } 19 cout<<--n<<endl; 20 } 21 return 0; 22 }
要注意的地方是,做出循环的判断。
标签:
原文地址:http://www.cnblogs.com/luosuo10/p/5214282.html