社区讨论

求助!谁答复让我AC我就关注。

P1689方程求解参与者 3已保存回复 4

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
4 条
当前快照
1 份
快照标识符
@lo29rur0
此快照首次捕获于
2023/10/23 10:19
2 年前
此快照最后确认于
2023/11/03 10:31
2 年前
查看原帖
#include <string>
using namespace std;
string s;
int x=-1,y=-1,z=-1,sum;
int flag=0,fu;
int main()
{
    getline(cin,s);
    for(int i=0;i<s.size();i++)
    {
	  if(s[i]=='?')
		flag++; 
      if(s[i]>='0'&&s[i]<='9')
      {
		sum=0;
		while((s[i]>='0'&&s[i]<='9')||(s[i]==' '))
		{
		  if(s[i]==' ')
		    i++;
		  else
		  {
		    sum=sum*10+(s[i]-'0');
		    i++;
		  }
		}
		if(flag==2)
        {
          z=sum;
          break;
        }
        else if(flag==1)
        {
          y=sum;
          flag++;
        }
        else if(flag==0)
        {
          x=sum;
          flag++;
        }
      }
      if(s[i]=='+')
        fu=0;
      if(s[i]=='-')
        fu=1;
    }
    if(x==-1)
    {
      if(fu==0)
        cout<<z-y;
      else
        cout<<z+y;
    }
    if(y==-1)
    {
      if(fu==0)
        cout<<z-x;
      else
        cout<<z+x;
    }
    if(z==-1)
    {
      if(fu==0)
        cout<<x+y;
      else
        cout<<x-y;
    }
    return 0;
}

回复

4 条回复,欢迎继续交流。

正在加载回复...