------
## 最终结论
```python
def find_unique_substrings(p):
    # Initialize a dictionary to record the longest length of substrings ending with each letter
    longest_substring_length = {}
    
    # Variable to keep track of the current length of the substring
    current_length = 0
    
    for i in range(len(p)):
        if i == 0:
            # The first character always starts a new substring
            current_length = 1
        else:
            # Check if the current character is the next in wraparound sequence from previous character
            if (ord(p[i]) - ord(p[i - 1]) + 26) % 26 == 1:
                current_length += 1
            else:
                current_length = 1
        
        # Update the longest substring length for the current character
        if p[i] in longest_substring_length:
            longest_substring_length[p[i]] = max(longest_substring_length[p[i]], current_length)
        else:
            longest_substring_length[p[i]] = current_length
    
    # Calculate the total number of unique substrings
    total_unique_substrings = sum(longest_substring_length.values())
    
    return total_unique_substrings

# Example usage
p1 = "a"
p2 = "cac"
p3 = "zab"

print(find_unique_substrings(p1))  # Output: 1
print(find_unique_substrings(p2))  # Output: 2
print(find_unique_substrings(p3))  # Output: 6
```