传统题 1000ms 128MiB

魔法符文

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目名称

魔法符文

题目描述

在神秘魔法世界中,魔法师使用由 truefalseandor 组成的古老符文进行法术仪式,需将符文序列转化为最终魔法能量值(truefalse )。规则如下:

  1. truefalse 是基础魔法能量值。
  2. andor 是魔法连接符,用于将两个魔法能量值组合成新能量值。
  3. and 符文优先级高于 or,组合符文时先计算 and 连接的能量值,再计算 or 连接的能量值。

魔法师需设计算法解析符文序列并计算最终魔法能量值。

输入格式

  • 第一行:输入两个数 nnqq,分别表示魔法词汇个数和询问次数。
  • 第二行:包含 nn 个字符的字符串,魔法能量值和魔法连接符交替输入,且第一个和最后一个一定是魔法能量值。
  • 以下 qq 行:每行包含两个整数 llrr
    • lrl \leq r ,计算并返回区间 [l,r][l, r] 范围的运算结果。
    • l>rl > r ,分别计算区间 [l,n+2r][l, n + 2 - r][r,l+2n][r, l + 2 - n] 的结果 AABBCC ,输出 AA op1 BB op2 CC 的结果,op1op2 分别为第 r1r - 1 个字符串和第 l+1l + 1 个字符串(若区间不存在则忽略该区间计算),保证 op1op2 都为魔法连接符。

输出格式

共输出 qq 行,每行输出一个询问的结果,若计算结果为 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 falsefalse,再进行 or 运算,最终结果为 false,输出 F
    • 第二次询问:出现了 or,且 or 右边结果为 true,最终结果为 true,输出 T
    • 第三次询问:因 l<rl < r ,先算 A=[1,2]A=[1,2] 结果为 falseB=[3,13]B=[3,13] 结果为 trueC=[12+213,13+213]=[1,2]C=[12 + 2 - 13,13 + 2 - 13]=[1,2] 结果为 falseop1=orop2=and,计算 AA or BB and CC 结果为 false,输出 F
    • 第四次询问:[1,2][1,2] 区间不存在,[12,13][12,13] 区间不存在,只有 B=[5,8]B=[5,8] ,计算 BB 情况,结果为 false,输出 F

数据范围

  • 1n,q20021 \leq n, q \leq 2002,且 nn 为奇数 。
  • 每次询问保证 llrr 一定为奇数 。
  • 20%的数据保证:输入的魔法连接符只出现 and 或者 or 其中一种。

育华周赛 第十三期

未参加
状态
已结束
规则
乐多
题目
6
开始于
2025-4-4 18:00
结束于
2025-4-7 0:00
持续时间
54 小时
主持人
参赛人数
17