NYOJ 1272 表示式求值

2021-08-18 02:25:36 字數 774 閱讀 5568

思路:

套用原來的模板,然後稍加修改。 不懂得同學看這裡:表示式求值。

我們相當於新增了兩個運算子smax和,我們只需要把他們的優先順序新增到表裡面。然後實現smax函式即可。

#includeusing namespace std;

char precede(char a, char b)

,// +

,// -

,// *

,// /

,// (

,// )

,// #

,// smax

// ,

};int x, y;

switch(a)

switch(b)

return op[x][y];

}int get_sum(int a)

return ans;

}int smax(int a, int b)

int calculation(int a,int b,char op)

}int main()

else

switch(precede(optr.top(),s[i]))

}if (s[i] == 'm') i += 4;

}cout << opnd.top() << endl;

}return 0;}/*

312+2*3

12*(2+3)

12*(2+3)+smax(333,220+280)

*/

nyoj 1272 表示式求值

描述 假設表示式定義為 1.乙個十進位制的正整數 x 是乙個表示式。2.如果 x 和 y 是 表示式,則 x y,x y 也是表示式 優先順序高於 3.如果 x 和 y 是 表示式,則 函式 smax x,y 也是表示式,其值為 先分別求出 x y 值的各位數字之和,再從中選最大數。4 如果 x 是...

NYOJ 1272 表示式求值

時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 假設表示式定義為 1.乙個十進位制的正整數 x 是乙個表示式。2.如果 x 和 y 是 表示式,則 x y,x y 也是表示式 優先順序高於 3.如果 x 和 y 是 表示式,則 函式 smax x,y 也是表示式,其值為 先分...

NYOJ 1272 表示式求值

題目描述 假設表示式定義為 1.乙個十進位制的正整數 x 是乙個表示式。2.如果 x 和 y 是 表示式,則 x y,xy 也是表示式 優先順序高於 3.如果 x 和 y 是 表示式,則 函式 smax x,y 也是表示式,其值為 先分別求出 x y 值的各位數字之和,再從中選最大數。4 如果 x ...