sleeping_Mr_Z @ 2024-03-07 21:18:16
#include <iostream>
#include <sstream>
#include <string.h>
using namespace std;
enum fu1{jia,jian,cheng};
fu1 fu;
int f(int x){
int sum=0;
if(x<0)
sum++;
while(x){
sum++;
x/=10;
}
return sum;
}
int main(){
int n,x,y;
cin>>n;
getchar();
string a;
char temp;
for(int i=0;i<n;i++){
getline(cin,a);
istringstream in(a);
if(a[0]>='a'&&a[0]<='c'){
if(a[0]=='a')
fu=jia;
else if(a[0]=='b')
fu=jian;
else if(a[0]=='c')
fu=cheng;
in>>temp;
}
in>>x>>y;
if(fu==jia){
cout<<x<<'+'<<y<<'='<<x+y<<'\n'<<f(x)+f(y)+f(x+y)+2<<'\n';
}
else if(fu==jian){
cout<<x<<'-'<<y<<'='<<x-y<<'\n'<<f(x)+f(y)+f(x-y)+2<<'\n';
}
else if(fu==cheng){
cout<<x<<'*'<<y<<'='<<x*y<<'\n'<<f(x)+f(y)+f(x*y)+2<<'\n';
}
}
}
//不知道为什么就是不对,用样例和第一组数据(一个点都没对所以只能试第一组数据)跑是没问题 //第一次用字符串流不太会 //求大佬帮忙
by sleeping_Mr_Z @ 2024-03-07 21:19:46
全部是WA,有数字不对的也有符号不对的
by YuYuanPQ @ 2024-03-07 21:21:46
in>>x>>y;
???
@3100034184a
by sleeping_Mr_Z @ 2024-03-07 21:24:03
@lizhaoyuan_2010 应该是这里 istringstream in(a);
by YuYuanPQ @ 2024-03-07 21:24:56
@3100034184a 哦,没看见
by sleeping_Mr_Z @ 2024-03-07 21:25:49
@lizhaoyuan_2010 因为我看书上是这样的 也是第一次写字符串流 可能搞错了什么