我可不可以把
f[i][j][x][k]作为第ij个点为转折点,第ij个点右侧的插头是k,x表示分割线上的插头(除了第ij个点右侧)的状态
作为转移的状态
然后把 f[n][n][0][0]作为答案(也就是所有都填满,边界无插头),把f[1][0][0][0]=1作为初始(也就是全部为空,边界无插头)
然后在发现i j 个点为障碍物时,只在ij下方右方均无插头时候进行转移,否则赋值为0
在发现i j 不为障碍物时,下方右方都有插头,下方为左括号上方为右括号时才进行转移,否则赋值为0
其他转移也差不多,只要保证障碍物旁边无插头和左右插头对应即可
这么搞可以吗?看了下题解和网上代码好像都用的哈希表,感觉好诡异