step1 :
dp functon!
step2:
1: if return dp[n][m] //compare with other, compare two !
for(int j = 1; j <= n; j ++)
for(int i = 1; i < i; i ++)
2: if return dp[1][n] // if compare with itself
for(int len = 0; len <= n; len ++)
for(int i = 0, j = len; j <= n; i ++, j ++)