90分
查看原帖
90分
1003179
LRRabcd楼主2024/3/31 16:12
#include<iostream>
#include<cstring> 
#define int long long
using namespace std;
signed main(){
    string s;
    int a,b,c;
    getline(cin,s);
    int len=s.size();
    for(int i=0;i<len;i++){
        if(s[i]=='+'||s[i]=='-'){
            a=i;
        } 
        if(s[i]=='?'){
            b=i;
        }
        if(s[i]=='='){
            c=i;
        }
    }
    if(c<b){//和或差
        long long ans1=0,ans2=0;
        for(int i=0;i<=a-1;i++){
            if(s[i]>='0'&&s[i]<='9'){
            	ans1*=10;
                ans1=(s[i]-'0')+ans1;
            }
        }
        for(int i=a+1;i<=c-1;i++){
            if(s[i]>='0'&&s[i]<='9'){
            	ans2*=10;
                ans2=(s[i]-'0')+ans2;
            }
        }
        if(s[a]=='+'){
            cout<<ans1+ans2;
            return 0;
        }
        if(s[a]=='-'){
            cout<<ans1-ans2;
            return 0;
        }
    } 
    if(a<b&&c>b){//减数或加数
        long long ans1=0,ans2=0;
        for(int i=0;i<=a-1;i++){
            if(s[i]>='0'&&s[i]<='9'){
            	ans1*=10;
                ans1=(s[i]-'0')+ans1;
            }
        }
        for(int i=c+1;i<=len-1;i++){
            if(s[i]>='0'&&s[i]<='9'){
            	ans2*=10;
                ans2=(s[i]-'0')+ans2;
            }
        }
        if(s[a]=='+'){
            cout<<ans2+ans1;
            return 0;
        }
        if(s[a]=='-'){
            cout<<ans1-ans2;
            return 0;
        }
    }
    if(a>b){//被减数或加数
        long long ans1=0,ans2=0;
        for(int i=a+1;i<=c-1;i++){
            if(s[i]>='0'&&s[i]<='9'){
            	ans1*=10;
                ans1=(s[i]-'0')+ans1;
            }
        }
        for(int i=c+1;i<=len-1;i++){
            if(s[i]>='0'&&s[i]<='9'){
            	ans2*=10;
                ans2=(s[i]-'0')+ans2;
            }
        }
        if(s[a]=='+'){
            cout<<ans2-ans1;
            return 0;
        }
        if(s[a]=='-'){
            cout<<ans1+ans2;
            return 0;
        }
    }
    return 0;
}

90分

2024/3/31 16:12
加载中...