社区讨论

哪位大佬帮忙看一下程序

学术版参与者 3已保存回复 9

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
9 条
当前快照
1 份
快照标识符
@mi6yt347
此快照首次捕获于
2025/11/20 13:02
4 个月前
此快照最后确认于
2025/11/20 13:02
4 个月前
查看原帖
CPP
#include<cstdio>
using namespace std;

long int p,i,j,a[505],ans=0,x=0;

unsigned long long xx=2,yy=1;

int main(){
    scanf("%ld",&p);
    x=p;
    ans=0.30103*x+1;
    printf("%ld\n",ans);
    ans=0;
    a[500]=1;
    x=0;
    printf("%ld\n",p);
    while(p>500){
    	if(p%2==0){
    		xx=xx*xx;
    		p/=2;
    		printf("%ld\n",p);
    	}
    	else{
    		yy*=xx;
    		p-=1;
    		xx=xx*xx;
    		p/=2;
			printf("%ld\n",p);
    	}
    }
    printf("%ld\n",xx);
    printf("%ld\n",p);
    printf("%ld\n",yy);
    printf("%ld %ld %ld\n",xx,p,yy);
    while(p--){
        for(i=500;i>=1;i--){
            a[i]*=xx;
            if(x>0){
                a[i]+=x;
                x=0;
            }
            if(a[i]>9){
                x=a[i]/10;
                a[i]%=10;
            }
        }
        x=0;
    }
    x=0;
    for(i=500;i>=1;i--){
    	a[i]*=yy;
        if(x>0){
            a[i]+=x;
            x=0;
        }
        if(a[i]>9){
            x=a[i]/10;
            a[i]%=10;
        }
    }
    a[500]-=1;
    for(i=1;i<=500;i++){
        printf("%ld",a[i]);
        if(i%50==0){
            printf("\n");
        }
    }
    return 0;
}

回复

9 条回复,欢迎继续交流。

正在加载回复...