这道通过率超过50%的题居然折腾了我一下午...仔细想一下首先就是题意没有理解清楚...开始自己推了一个DP...即:
首先判断s1与s2的长度...如果一样..则直接输出...如果strlen(s2)>strlen(s1)则把s1与s2换一下..
用a[ i ] [ j ] 数组来存状态..储存的状态是s1的前i个数中插了j个'-'..
状态转移则是 : a[ i ] [ j ] = max ( a[ i ] [ j - 1 ] + turn ( s1[ i ] , s2[ i - j ] ) , a [ i -1 ] [ j -1 ] + turn ( s1 [ i ] , ' - ' )