/**
 * Given two sets s1 and s2, remove elements from s1 that are also present in s2.
 *
 * @param s1 First set
 * @param s2 Second set
 * @return A set with the common elements removed
 */
fun removeCommonElements(s1: MutableSet<Int>, s2: Set<Int>): MutableSet<Int> {

    val setCopy = s1.toMutableSet()

    // Iterate over each element in setCopy
    for (elem in setCopy.toList()) {
        // Check if the element is present in s2
        if (elem in s2) {
            // If it is, remove it from s1
            s1.remove(elem)
        }
    }

    return s1
}
/**
 * Given two sets s1 and s2, remove elements from s1 that are also present in s2.
 *
 * @param s1 First set
 * @param s2 Second set
 * @return A set with the common elements removed
 */
fun removeCommonElements(s1: MutableSet<Int>, s2: Set<Int>): MutableSet<Int> {
/**
 * Given two sets s1 and s2, remove elements from s1 that are also present in s2.
 *
 * @param s1 First set
 * @param s2 Second set
 * @return A set with the common elements removed
 */
fun removeCommonElements(s1: MutableSet<Int>, s2: Set<Int>): MutableSet<Int> {

    val setCopy = s1.toMutableSet()

    // Iterate over each element in setCopy
    for (elem in setCopy.toList()) {
        // Check if the element is present in s2
        if (elem in s2) {
            // If it is, remove it from s1
            s1.remove(elem)
        }
    }

    return s1
}