D

首先最后肯定只会剩下一个字母,因为小紫希望这个字符串的字典序尽可能小,比如:a < aa,小紫肯定会把aa删剩下a

假如字符串为b?????g,小红先行动,所以答案至少为g(g > b),如果?中存在一个字母比g大,小红想保留这个?字母,轮到小紫行动,肯定能把这个?字母给删除掉,使得答案不可能超过g,因此 g <= ans <= g,即ans = g

直接

print(max(s[0],s[-1]))

E

最短路dijkstra即可,最小堆中4个参数(c,x,y,d)

  • c 步数
  • (x,y) 坐标位置
  • d 移动方向

F

用子集和模板即可,子集和改成子集与运算,由于

所以子集与运算个数最多200