社区讨论
求教大佬
P1322logo语言参与者 1已保存回复 0
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @mdeetsra
- 此快照首次捕获于
- 2025/07/22 18:46 8 个月前
- 此快照最后确认于
- 2025/11/04 03:55 4 个月前
我写了个代码,靶特 RE了第8个点,求教大佬纠错!!!!
CPP#include<bits/stdc++.h>
using namespace std;
#define int long long
queue<int>t;
signed main(){
// freopen("123456789.in","r",stdin);
//freopen(".out","w",stdout);
//ios::sync_with_stdio(false);
//cin.tie(0);
//cout.tie(0);
//srand(time(NULL));
string ss;
getline(cin,ss);
int ans=0;
int s=1;
for(int i=0;i<ss.size();i++){
char a=ss[i];
if(a=='R'){
i+=7;
int j=i;
if(j>=ss.size()) break;
int x=0;
while(isdigit(ss[j])){
if(j>=ss.size()) break;
x=x*10+ss[j]-'0';
j++;
}
i=j;
t.push(x);
s*=x;
}
else if(a=='B'){
i+=3;
int x=0,j=i;
if(j>=ss.size()) break;
while(isdigit(ss[j])){
if(j>=ss.size()) break;
x=x*10+ss[j]-'0';
j++;
}
ans-=s*x;
}
else if(a=='F'){
i+=3;
int x=0,j=i;
if(j>=ss.size()) break;
while(isdigit(ss[j])){
if(j>=ss.size()) break;
x=x*10+ss[j]-'0';
j++;
}
ans+=s*x;
}
else if(a==']'){
s/=t.front();
t.pop();
}
}
cout<<abs(ans);
return 0;
}
[提交记录](https://www.luogu.com.cn/record/226150983)
回复
共 0 条回复,欢迎继续交流。
正在加载回复...