死亡回放: https://www.luogu.com.cn/record/list?pid=P1022&user=1075989
代码:
#include<iostream>
#include<cstring>
using namespace std;
int main(){
string s;cin>>s;
int tmp=0,cnum=0,xnum=0,i;
bool nowf=true;
char w;
for(i=0;s[i]!='=';i++){
if(s[i]=='-'){
cnum+=nowf?tmp:-tmp;
nowf=false;
tmp=0;
}else if(s[i]=='+'){
cnum+=nowf?tmp:-tmp;
nowf=true;
tmp=0;
}else if(s[i]<='9'&&s[i]>='0'){
tmp*=10;
tmp+=s[i]-'0';
}else if(s[i]<='z'&&s[i]>='a'){
w=s[i];
xnum+=nowf?tmp:-tmp;
tmp=0;
}
}
cnum+=tmp;
tmp=0;nowf=true;
int cnum1=0,xnum1=0;
while(i<s.size()){
if(s[i]=='-'){
cnum1+=nowf?tmp:-tmp;
nowf=false;
tmp=0;
}else if(s[i]=='+'){
cnum1+=nowf?tmp:-tmp;
nowf=true;
tmp=0;
}else if(s[i]<='9'&&s[i]>='0'){
tmp*=10;
tmp+=s[i]-'0';
}else if(s[i]<='z'&&s[i]>='a'){
w=s[i];
xnum1+=nowf?tmp:-tmp;
tmp=0;
}
i++;
}
cnum1+=tmp;
cnum1-=cnum;cnum=cnum1;
xnum-=xnum1;
xnum=(xnum==0?1:xnum);
int result=cnum*1000/xnum;
cout<<w<<'='<<result/1000<<'.';
cout<<result%1000/100==0?0:result%1000/100;
cout<<result%100/10==0?0:result%100/10;
cout<<result%10/1==0?0:result%10/1;
return 0;
}