社区讨论
MLE求调!!!
题目总版参与者 3已保存回复 6
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 6 条
- 当前快照
- 1 份
- 快照标识符
- @m0hoqwfk
- 此快照首次捕获于
- 2024/08/31 13:11 2 年前
- 此快照最后确认于
- 2025/11/04 21:57 4 个月前
是MLE(内存),不是TLE(超时)
CPP#include<bits/stdc++.h>
using namespace std;
string jf(string a,string b){
string u="";
int lena=a.length();
int lenb=b.length();
int a1[100000]={},b1[100000]={},c1[100000]={};
for(int i=0;i<lena;i++){
a1[lena-1-i]=a[i]-'0';
}
for(int i=0;i<lenb;i++){
b1[lenb-1-i]=b[i]-'0';
}
int lenc=max(lena,lenb);
int i=0,i2;
for(;i<=lenc;i++){
c1[i]+=(a1[i]+b1[i]);
c1[i+1]=c1[i]/10;
c1[i]%=10;
}
for(;c1[i]==0;i--);
i2=i;
for(;i2>=0;i2--){
u.append(to_string(c1[i2]));
}
return u;
}
string cf(string a,string b){
string u;
int lena=a.length();
int lenb=b.length();
int a1[100000]={},b1[100000]={},c1[100000]={};
for(int i=0;i<lena;i++){
a1[lena-1-i]=a[i]-'0';
}
for(int i=0;i<lenb;i++){
b1[lenb-1-i]=b[i]-'0';
}
for(int i=0;i<lena;i++){
for(int j=0;j<lenb;j++){
c1[i+j]+=a1[i]*b1[j];
c1[i+j+1]+=c1[i+j]/10;//进位
c1[i+j]%=10;
}
}
int i=lena+lenb,i2;
for(;c1[i]==0;i--);
i2=i;
for(;i2>=0;i2--){
u.append(to_string(c1[i2]));
}
return u;
}
int main(){
int n;
cin>>n;
string b1="0";
string a[n]={"6"},b[n]={};
for(int i=1;i<n;i++){
a[i]=a[i-1];
a[i].append("6");
}
for(int i=0;i<n;i++){
b[i]=cf(a[i],a[i]);
}
for(int i=0;i<n;i++){
b1=jf(b1,b[i]);
}
cout<<b1;
return 0;
}
回复
共 6 条回复,欢迎继续交流。
正在加载回复...