Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
143781 陈家宝 交流 C++ 通过 100 23 MS 308 KB 835 2024-04-18 13:48:18

Tests(10/10):


#include<bits/stdc++.h> using namespace std; int a[5005],b[5005],n,sum=0; vector<int> vec; void add(int x[],int y[]){ for(int i=0;i<=5000;i++){ x[i]+=y[i]; x[i+1]+=x[i]/10; x[i]%=10; } } void c(int x[],int y){ for(int i=0;i<=5000;i++){ x[i]*=y; if(i>0){ x[i]+=(x[i-1]/10); x[i-1]%=10; } } } void div(int x[],int y){ int maxl=5000,s=0; while(x[maxl]==0&&maxl>=1)maxl--; for(int i=maxl;i>=0;i--){ s=s*10+x[i]; vec.push_back(s/y); s%=y; } } int main(){ cin>>n; for(int i=1;i<=n;i++){ string x; cin>>x; memset(b,0,sizeof(b)); for(int j=0;j<x.size();j++)b[j]=x[x.size()-j-1]-'0'; add(a,b); } c(a,n-1); c(a,n-2); div(a,2); bool qdl=true; for(int i=0;i<vec.size();i++){ if(qdl&&vec[i]==0)continue; qdl=false; cout<<vec[i]; } return 0; }


测评信息: