魔法符文
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目名称
魔法符文
题目描述
在神秘魔法世界中,魔法师使用由 true、false、and、or 组成的古老符文进行法术仪式,需将符文序列转化为最终魔法能量值(true 或 false )。规则如下:
true和false是基础魔法能量值。and和or是魔法连接符,用于将两个魔法能量值组合成新能量值。and符文优先级高于or,组合符文时先计算and连接的能量值,再计算or连接的能量值。
魔法师需设计算法解析符文序列并计算最终魔法能量值。
输入格式
- 第一行:输入两个数 和 ,分别表示魔法词汇个数和询问次数。
- 第二行:包含 个字符的字符串,魔法能量值和魔法连接符交替输入,且第一个和最后一个一定是魔法能量值。
- 以下 行:每行包含两个整数 和 。
- 若 ,计算并返回区间 范围的运算结果。
- 若 ,分别计算区间 和 的结果 、、 ,输出
op1op2的结果,op1和op2分别为第 个字符串和第 个字符串(若区间不存在则忽略该区间计算),保证op1和op2都为魔法连接符。
输出格式
共输出 行,每行输出一个询问的结果,若计算结果为 true 则输出 T,否则输出 F 。
输入输出样例
- 输入样例
13 4
false or true and false and false and true or true and false
1 5
3 11
11 3
13 1
- 输出样例
F
T
F
F
- 样例解释
- 第一次询问:先计算
true and false得false,再进行or运算,最终结果为false,输出F。 - 第二次询问:出现了
or,且or右边结果为true,最终结果为true,输出T。 - 第三次询问:因 ,先算 结果为
false, 结果为true, 结果为false,op1=or,op2=and,计算orand结果为false,输出F。 - 第四次询问: 区间不存在, 区间不存在,只有 ,计算 情况,结果为
false,输出F。
- 第一次询问:先计算
数据范围
- ,且 为奇数 。
- 每次询问保证 , 一定为奇数 。
- 20%的数据保证:输入的魔法连接符只出现
and或者or其中一种。