zoukankan      html  css  js  c++  java
  • CSP 201903-2 24点

    这是上一次考csp时遇到的一道简单的问题,但是当时太菜了没有写出来。

    问题描述:

    直接上图

    解决思路:

      标准的表达式求解,可以用符号栈和数值栈来存放运算符和数值,需要注意的是从左到右扫描的时候

    遇到 ‘-’ 号可以转换成‘ +’ 号,遇到‘X’和‘/’直接计算,最后 算‘+’运算。

    代码如下:

    #include<iostream>
    #include<stack>
    
    using namespace std;
    stack<int> num;
    stack<char> expr;
    
    int n;
    char a[8];
    int main()
    {
        cin>>n;
        int j,k;
        while(n--)
        {
            cin>>a;
            //cout<<a;
            for(int i=0;i<7;i++)
                {
                    if(a[i]>='0'&&a[i]<='9')
                        num.push(a[i]-'0');
                    else if(a[i]=='+')
                        expr.push(a[i]);
                    else if(a[i]=='-')
                    {
                        expr.push('+');
                        num.push(-(a[++i]-'0'));
                    }
                    else if(a[i]=='x')
                    {
                        j=num.top();
                        num.pop();
                        num.push(j*(a[++i]-'0'));
                    }
                    else{
                        j = num.top();
                        num.pop();
                        num.push(j/(a[++i]-'0'));
                    }
                }
            while(!expr.empty())
            {
                expr.pop();
                j = num.top();
                num.pop();
                k=num.top();
                num.pop();
                num.push(j+k);
            }
            //cout<<num.top()<<endl;
            if(num.top()==24)
                cout<<"Yes"<<endl;
            else
                cout<<"No"<<endl;
        }
        return 0;
    }

    大功告成了,提交查看:

    这就是本题的求解。

    (由于本人是菜鸡(刚刚开始学习),大佬们如果看到勿喷)。

    一条有梦想的咸鱼
  • 相关阅读:
    logstash 字段引用
    Filter Conditions 过滤条件
    Not found org.springframework.http.converter.json.MappingJacksonHttpMessageConve
    rsyslog Properties
    rsyslog 模板
    rsyslog 基本结构
    awk RS ORS
    elasticsearch分布式特点
    spring事物配置,声明式事务管理和基于@Transactional注解的使用
    myBatis:事务管理
  • 原文地址:https://www.cnblogs.com/Crossea/p/11280838.html
Copyright © 2011-2022 走看看