每次在尚未运算的运算符找出一个优先级最高的符号,进行相应的运算,直至仅剩一个数字时返回。 这种方法符合自然思维和运算规则,实现简单明了,不易出错。 1.数据结构: 我们由左而右扫描表达式串st的每一个字符,存储每一个运算的信息。 其中第i个运算的运算符存储在c[i],优先级存储在d[i] d[i]= (括号嵌套层数)*3+1 '+',-' (括号嵌套层数)*3+2 '*' (括号嵌套层数)*3+3 '^' 数存储在r[i](若第i个运算的操作数为变量a,则r[i]=-1) 我们将目前所有参与过运算的操作数放在集合里 其中第p个操作数参与运算后的结果记入第f[p]个操作数,即所有具有同一个f值的操作数组成一个集合,它们运算后的结果记入第f[p]个操作数。 如果c[i]为当前的运算符,则从f[i]和f[i+1]出发,顺着f指针即可找到参与运算的两个操作数。 const xn=3;{代入的a的总数} mn=2;{模的总数} var cm,rc,nn,n,i,j:longint;{选项数为nn;运算数为n} st:string;{表达式串} c:array [1..30] of char;{c[i]为第i个运算的运算符} d:array [1..30] of longint;{ d[i]为第i个运算的优先级} r,u:array [1..30] of int64;{ r[i]为第i个运算的操作数。若r[i]=-1,则第i个运算的操作数为变量a} a:array [1..xn,1..mn] of int64;{将第i个变量值和第j个模代入题干后的值为a[i,j]} x:array [1..xn] of longint;{a的第i个代入值为x[i];模的第i个代入值为y[i]} y:array [1..mn] of longint; yes:boolean;{当前选项与题干等价的标志} mv:int64;{当前选项的值} | |||||
![]() OI是一种精神 大家能再聚到一起不容易 所以珍惜每一次灌水的机会吧...... | |||||
[楼 主] | Posted: 2006-08-20 11:47 | [顶端] |
redswallow |
![](https://i-blog.csdnimg.cn/blog_migrate/7d0033c36f4c80e267a775096b4f9b84.png)
![大富翁勋章](https://i-blog.csdnimg.cn/blog_migrate/71ad414c6ceb4d99eb4f057bc4cda7df.png)
![优秀斑竹勋章](https://i-blog.csdnimg.cn/blog_migrate/e4b40dce9354df7a7efb9094351d910e.png)
![灌水天才勋章](https://i-blog.csdnimg.cn/blog_migrate/adf87491a5759a0277fa18bbf2c0c5bc.png)
![论坛一周年纪念章](https://i-blog.csdnimg.cn/blog_migrate/cb3a9be0eb0103f8f746aa4d4fdf8366.png)
![头衔:很好,很CCTV](https://i-blog.csdnimg.cn/blog_migrate/d5d98859b44c0f9b698a7f63fa2d4359.png)
![](https://i-blog.csdnimg.cn/blog_migrate/96f4c577ad2513fa286a7ab7944f4d7f.png)
![该用户目前在线](https://i-blog.csdnimg.cn/blog_migrate/82a2771e58abcd8b64c6b91c9a1fc131.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
|
redswallow |
![](https://i-blog.csdnimg.cn/blog_migrate/7d0033c36f4c80e267a775096b4f9b84.png)
![大富翁勋章](https://i-blog.csdnimg.cn/blog_migrate/71ad414c6ceb4d99eb4f057bc4cda7df.png)
![优秀斑竹勋章](https://i-blog.csdnimg.cn/blog_migrate/e4b40dce9354df7a7efb9094351d910e.png)
![灌水天才勋章](https://i-blog.csdnimg.cn/blog_migrate/adf87491a5759a0277fa18bbf2c0c5bc.png)
![论坛一周年纪念章](https://i-blog.csdnimg.cn/blog_migrate/cb3a9be0eb0103f8f746aa4d4fdf8366.png)
![头衔:很好,很CCTV](https://i-blog.csdnimg.cn/blog_migrate/d5d98859b44c0f9b698a7f63fa2d4359.png)
![](https://i-blog.csdnimg.cn/blog_migrate/96f4c577ad2513fa286a7ab7944f4d7f.png)
![该用户目前在线](https://i-blog.csdnimg.cn/blog_migrate/82a2771e58abcd8b64c6b91c9a1fc131.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83a998f7e29bb660a48857e27a298c3e.png)
|