Question: 
Write a function to count the longest repeating subsequences such that the two subsequences don’t have same string characters at same positions.


Model's Code:
def find_longest_repeating_subseq(s):
    n = len(s)
    dp = [[0] * (n + 1) for _ in range(n + 1)]
    
    for i in range(1, n + 1):
        for j in range(1, n + 1):
            if s[i - 1] == s[j - 1] and i != j:
                dp[i][j] = dp[i - 1][j - 1] + 1
            else:
                dp[i][j] = max(dp[i - 1][j], dp[i][j - 1])
    
    return dp[n][n]



Sample Correct Code:
def find_longest_repeating_subseq(str): 
	n = len(str) 
	dp = [[0 for k in range(n+1)] for l in range(n+1)] 
	for i in range(1, n+1): 
		for j in range(1, n+1): 
			if (str[i-1] == str[j-1] and i != j): 
				dp[i][j] = 1 + dp[i-1][j-1] 
			else: 
				dp[i][j] = max(dp[i][j-1], dp[i-1][j]) 
	return dp[n][n]


Asserts:
assert find_longest_repeating_subseq("AABEBCDD") == 3
assert find_longest_repeating_subseq("aabb") == 2
assert find_longest_repeating_subseq("aab") == 1


Tests:
Test 1 of 3: PASS
Test 2 of 3: PASS
Test 3 of 3: PASS

Test 207 of 974: 153/207 (73.91304347826086%): success