题意解析

给出一个由××组成的表达式,求使结果为0的可能性。

思路解析

列举样例总结规律后,可发现这其实可总结为中缀表达式求值,但需分为结果为零和结果为一两种情况,计算法则与××相同。

计算

if(c=='+'){
		res.f0=(a.f0*b.f0)%10007;
		res.f1=(a.f1*(b.f1+b.f0)+a.f0*b.f1)%10007;
		num.push(res);
	}
	else{
		res.f0=(a.f0*(b.f0+b.f1)+a.f1*b.f0)%10007;
		res.f1=(a.f1*b.f1)%10007;
		num.push(res);
	}

遍历

for(int i=0;i<n;i++){
		if(s[i]=='(')op.push('(');
		else if(s[i]==')'){
			while(op.top()!='(')calc();
			op.pop();
		}
		else{
			while(op.size()!=0 and mp[s[i]]<mp[op.top()])calc();
			num.push({1,1});
			op.push(s[i]);
		}
	}
	while(op.size()!=0)calc();

0 条评论

目前还没有评论...