var findLength = function(nums1, nums2) {
    const dp = [...Array(nums1.length+1)].map(() => Array(nums2.length+1).fill(0));
    let maxLen = 0;
        
    for(let i = 1; i <= nums1.length; i++) {
        for(let j = 1; j <= nums2.length; j++) {
            if(nums1[i-1] === nums2[j-1]) {
                dp[i][j] = dp[i-1][j-1] + 1; // i-1, j-1 should be the duplicate length of the number in the array
                maxLen = Math.max(maxLen, dp[i][j]);
            }
        }
    }
    return maxLen;
};