"""
Write a function that takes a list of strings and returns the longest string 
that is a prefix of at least two strings in the list.

longestCommonPrefix(["flower","flow","flight"])
"fl"

longestCommonPrefix(["dog","racecar","car"])
""

longestCommonPrefix(["interstellar","internet","internal","interval"])
"inte"
"""
def longestCommonPrefix(items):
    if not items:
        return ""
    
    if len(items) == 1:
        return items[1]

    longest, i = "", 0
    prev = items[0][i]
    while True:
        prev, skip = items[0][i], False
        for item in items[1:]:
            if item[i] != prev:
                skip = True
                break
        else:
            longest += prev
            i += 1
        if skip:
            break
    return longest


print(longestCommonPrefix(["flower","flow","flight"]), "fl")
print(longestCommonPrefix(["dog","racecar","car"]), "")
print(longestCommonPrefix(["interstellar","internet","internal","interval"]), "inter")