题意:起点(1,1),终点(r,c)。路径上不能同时出现M和F,但是可以出现其中一种或不出现。 然后就是一个bfs裸题,从起点bfs到终点,得到res后乘二就是来回的路径长度。 对于M和F两种情况,可以用一个字符k来临时记录当前bfs是哪一种可行,然后跑就是了。 推广到有3,4,5...k种不一样的字符。可以用一个string去存临时可行的字符,遍历string,对于每一个可行字符跑一遍bfs就算成功。 好思路,下次出题就出这个,不过这题的题面很明显level不是很高(乐) 直接贴代码吧,可以学学bfs板子和怎么去check #include<bits/stdc++.h> usin...