除了测试点3其他都过了,不太明白。这是蒟蒻的码(没学过C++,大佬们轻点喷):
#include <iostream>
#include <string.h>
using namespace std;
char kw[][10]={"FD","BK","REPEAT"},ch;
int climb(){
char cmd[10];
int dist=0,temp;
while((ch=getchar())!='\n' && ch!=']'){
ungetc(ch,stdin);
cin>>cmd;cin>>temp;
if(!strcmp(cmd,kw[0])) dist+=temp;
else if(!strcmp(cmd,kw[1])) dist-=temp;
else{
getchar();
dist+=temp*climb();
}
}
return dist;
}
int abs_(int x){return x>0?x:-x;}
int main()
{
cout<<abs_(climb());
return 0;
}
谢谢!