有大佬能帮帮我吗?
用了STL中的 bitsset
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,m;
cin>>n>>m;
bitset<5000005*2> a;
n--;
cin>>a;
while(m--){
char c;
cin>>c;
int x=0;
switch (c) {
case '+':
for(;a.test(x);x++){
a.reset(x);
}
if(x==n+1){
n=x;
}
a.set(x);
break;
case '-':
for(;!a.test(x);x++){
a.set(x);
}
if(x==n){
n=x;
}
a.reset(x);
break;
case '*':
a<<=1;
n++;
break;
default:
a>>=1;
n--;
break;
}
}
for(int i=n;i>=0;i--){
cout<<(a.test(i));
}
return 0;
}
提交记录传送门