90求助!
查看原帖
90求助!
735089
ECNUAT_LZX楼主2023/8/12 12:47
#include<bits/stdc++.h>
#define int long long
using namespace std;
int n;
char last;
int calc(char c,int a,int b){
    if(c=='a')return a+b;
    if(c=='b')return a-b;
    return a*b;
}
int ws(int x){
    int cnt=0;
    if(x<=0)cnt++;
    x=abs(x);
    while(x){x/=10;cnt++;}
    return cnt;
}
char tos(char ch){
    if(ch=='a')return '+';
    if(ch=='b')return '-';
    return '*';
}
signed main(){
    cin>>n;
    for(int i=1;i<=n;i++){
        char c;
        cin>>c;
        if(c>='0'&&c<='9'){
            int a,b;
            cin>>a>>b;
            a+=(c-'0')*pow(10,(ws(a)));
            cout<<a<<tos(last)<<b<<"="<<calc(last,a,b)<<'\n';
            cout<<ws(a)+ws(b)+ws(calc(last,a,b))+2<<'\n';
        }
        else{
            int a,b;
            cin>>a>>b;
            cout<<a<<tos(c)<<b<<"="<<calc(c,a,b)<<'\n';
            cout<<ws(a)+ws(b)+ws(calc(c,a,b))+2<<'\n';
            last=c;
        }
    }
    return 0;
}
2023/8/12 12:47
加载中...