/**
 * This function takes two strings as input: 'strings' and 'separators'. It finds the intersection of the two strings
 * by splitting 'strings' using the characters in 'separators' as separators and creates a tuple from the resulting list.
 * The function returns the tuple.
 *
 * @param strings A string from which the tuple needs to be created.
 * @param separators A string consisting of characters used as separators in 'strings'.
 * @return A tuple created from the intersection of 'strings' using 'separators' as separators.
 */
fun intersection(strings: String, separators: String): List<String> {

    // Split the 'strings' using characters in 'separators' as separators
    val splitStrings = strings.split(*separators.toCharArray())

    // Remove any empty strings (resulting from consecutive separators)
    val filteredStrings = splitStrings.filter { it.isNotEmpty() }

    return filteredStrings
}

// Example usage
val inputString = "Hello,World!Python:Is:Great"
val separationCharacters = ":!,"
val result = intersection(inputString, separationCharacters)
/**
 * This function takes two strings as input: 'strings' and 'separators'. It finds the intersection of the two strings
 * by splitting 'strings' using the characters in 'separators' as separators and creates a tuple from the resulting list.
 * The function returns the tuple.
 *
 * @param strings A string from which the tuple needs to be created.
 * @param separators A string consisting of characters used as separators in 'strings'.
 * @return A tuple created from the intersection of 'strings' using 'separators' as separators.
 */
fun intersection(strings: String, separators: String): List<String> {
/**
 * This function takes two strings as input: 'strings' and 'separators'. It finds the intersection of the two strings
 * by splitting 'strings' using the characters in 'separators' as separators and creates a tuple from the resulting list.
 * The function returns the tuple.
 *
 * @param strings A string from which the tuple needs to be created.
 * @param separators A string consisting of characters used as separators in 'strings'.
 * @return A tuple created from the intersection of 'strings' using 'separators' as separators.
 */
fun intersection(strings: String, separators: String): List<String> {

    // Split the 'strings' using characters in 'separators' as separators
    val splitStrings = strings.split(*separators.toCharArray())

    // Remove any empty strings (resulting from consecutive separators)
    val filteredStrings = splitStrings.filter { it.isNotEmpty() }

    return filteredStrings
}

// Example usage
val inputString = "Hello,World!Python:Is:Great"
val separationCharacters = ":!,"
val result = intersection(inputString, separationCharacters)