1 条题解

  • -1
    @ 2025-1-1 11:29:53
    #include<bits/stdc++.h>
    #define rll(a) scanf("%lld",&a)
    #define rull(a) scanf("%llu",&a)
    #define f(i,l,r) for(int i=l;i<=r;i++)
    #define F(i,r,l) for(int i=r;i>=l;i--)
    using namespace std;
    void r(int &a){
    	int x=0,f=1;char ch=getchar();
    	while(ch<'0'||ch>'9'){if(ch=='-') f=-1;ch=getchar();}
    	while(ch>='0'&&ch<='9') x=x*10+ch-48,ch=getchar();
    	a=x*f;
    	return;
    }
    int x,n,a0,b,c[200005],d[200005],e[200005];
    void cheng(int t){
    	for(int i=1;i<=100;i++){
    		c[i]*=t;
    	}
    	for(int i=1;i<=100;i++){
    		if(c[i]>9){
    			c[i+1]+=c[i]/10;
    			c[i]%=10;
    		}
    	}
    	return;
    }
    void jia(){
    	for(int i=1;i<=100;i++){
    		d[i]+=e[i];
    		if(d[i]>9){
    			d[i+1]++;d[i]%=10;
    		}
    	}
    	return;
    }
    void cheng2(int t){
    	for(int i=1;i<=100;i++){
    		e[i]=c[i];
    		e[i]*=t;
    	}
    	int i;
    	for(i=1;i<=100;i++){
    		if(e[i]>9){
    			e[i+1]+=e[i]/10;
    			e[i]%=10;
    		}
    	}
    	return;
    }
    int main(){
    	r(x);r(n);r(a0);c[1]=1;
    	f(i,1,n){
    		r(b);
    		cheng(x);cheng2(b);jia();
    	}
    	int l=log10(a0)+1,l2=l;
    	while(a0>0){
    		d[l2-l+1]+=a0%10;
    		a0/=10;l--;
    	}
    	for(int i=1;i<=100;i++) if(d[i]>9){
    		d[i+1]+=d[i]/10;d[i]%=10;
    	}
    	for(int i=100;i>=1;i--) printf("%d",d[i]);
    	return 0;
    }
    
    • 1

    信息

    ID
    238
    时间
    1000ms
    内存
    256MiB
    难度
    6
    标签
    (无)
    递交数
    212
    已通过
    66
    上传者