⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1027.cpp

📁 我的URAL的1000 ~ 1050 的全部代码 包含WA 最后AC的程序 有2~3个比较难的是MAIGO的程序
💻 CPP
字号:
//要细心,一句一句分析题意
#include <iostream>
using namespace std;

bool inCmt;
bool inArith;
bool b_flag,s_flag;
int bracketNum = 0;

bool check(char ch)
{
     if( (ch <='9' && ch >='0') || ch == '=' || ch == '+' || ch == '-' || ch == '*' || ch == '/' || ch== '(' || ch == ')' || ch == 10  )
         return true;
	 return false;
}
int main()
{
 //   freopen("1027.in","r",stdin);
    char ch;
    while( cin.get(ch) )
    {
            if( ch == '(' && !inCmt ) { bracketNum++; b_flag = true; }
            
            else if( ch == '*' )
            {
                if( b_flag == false && inCmt ) s_flag = true;
                if( b_flag == true ){ b_flag = false; inCmt = true;}
                
            }
            else if( ch == ')' ) 
            {
				b_flag = false;
                if( s_flag == true ){ s_flag = false; inCmt = false; }
                if(!inCmt)bracketNum--; 
			}
            else
            {
                b_flag = false; s_flag = false;
            }
            
            if( !inCmt && !b_flag && (bracketNum > 0) ) inArith = true;
            else inArith = false;
            if( (inArith && !check(ch)) || bracketNum < 0 ) { cout <<"NO"<<endl; return 0;}
    }
    if( bracketNum > 0 ) cout << "NO" << endl;
    else cout << "YES" << endl;

    return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -