1 条题解

  • -5
    @ 2024-11-21 21:08:57

    另一种解法:

    对比 nnn^n(n+1)n+1(n+1)^{n+1} 发现:

    $n^n \times (\frac{n+1}{n})^n \times (n+1)=(n+1)^{n+1}$ 枚举发现 (n+1n)n=e(n)(\frac{n+1}{n})^n=e(n\to \infty)

    那么我们将 100100 以内的 (n+1n)n(\frac{n+1}{n})^n 打表记录在数组中,100100 以外的就拿 ee (至少精确到 2.71822.7182 这个精度才够)来代替 那么我们记录 nnn^n 的第一位为 tt33 开始 判断这次从 nn+1n \to n+1 会增长几位

    代码

    #include<bits/stdc++.h>
    using namespace std;
    string s;
    int x=1;
    int ss(double a){
    	int cnt=0;
    	while(a>=1){
    		cnt++;
    		a/=10;
    	}
    	return cnt-1;
    }
    double t=4;
    double nt[200]={0,0,2.25,2.37037,2.44141,2.48832,2.52163,2.5465,2.56578,2.58117,2.59374,2.6042,2.61304,2.6206,2.62715,2.63288,2.63793,2.64241,2.64643,2.65003,2.6533,2.65626,2.65897,2.66145,2.66373,2.66584,2.66778,2.66959,2.67128,2.67285,2.67432,2.6757,2.67699,2.67821,2.67936,2.68044,2.68146,2.68244,2.68336,2.68423,2.68506,2.68586,2.68661,2.68733,2.68802,2.68868,2.68931,2.68992,2.6905,2.69105,2.69159,2.6921,2.6926,2.69307,2.69353,2.69398,2.6944,2.69481,2.69521,2.6956,2.69597,2.69633,2.69668,2.69702,2.69734,2.69766,2.69797,2.69827,2.69856,2.69884,2.69912,2.69938,2.69964,2.69989,2.70014,2.70038,2.70061,2.70084,2.70106,2.70127,2.70148,2.70169,2.70189,2.70209,2.70228,2.70246,2.70264,2.70282,2.703,2.70317,2.70333,2.7035,2.70365,2.70381,2.70396,2.70411,2.70426,2.7044,2.70454,2.70468,2.70481};
    int main(){
    	//while(2){
    		x=1;
    		t=4.0;
    		cin>>s;
    		if(s[0]=='1'&&s.size()==1){
    			cout<<1;
    			return 0;
    			//continue;
    		}
    		for(double i=2;;i+=1){
    			if(s.size()<=x){
    				//cout<<t<<endl;
    				cout<<i<<endl;
    				break;
    			}
    			if(i<=90){
    				x+=ss(t*nt[int(i)]*(i+1));
    				t*=(nt[int(i)]*(i+1));
    			}
    			else{
    				x+=ss(t*2.7185*(i+1));
    				t*=(2.7185*(i+1));
    			}
    			
    			while(t>=10){
    				t/=10;
    			}
    		}
    //	}
    	return 0;
    }
    
    • 1

    信息

    ID
    137
    时间
    100ms
    内存
    128MiB
    难度
    9
    标签
    (无)
    递交数
    152
    已通过
    13
    上传者