profile
Опубликовано 5 лет назад по предмету Информатика от nikinik20042

Решить задачу в питоне при помощи множеств, даю 100 баллов

  1. Ответ
    Ответ дан mrgeneroth

    m = int(input())

    n = int(input())

    k = int(input())


    # множества фамилий учеников для каждого из языков

    eng_learners = set(input() for _ in range(m))

    fra_learners = set(input() for _ in range(n))

    ger_learners = set(input() for _ in range(k))


    # фамилии учеников, изучающих все три языка

    all_learners = eng_learners & fra_learners & ger_learners


    # фамилии учеников, изучающих ровно два языка

    # (пересечение двух множеств фамилий даст множество фамилий тех учеников, которые изучают как минимум эти два языка; если взять пересечения для всех пар множеств и объединить их в одно, то получится множество фамилий всех учеников, изучающих как минимум два языка; если из полученного множества убрать фамилии учеников, изучающих все три языка, то останутся только фамилии тех, кто изучает ровно два)

    two_lang_learners = (

       (eng_learners & fra_learners |

        eng_learners & ger_learners |

        fra_learners & ger_learners) - all_learners

    )


    print(len(two_lang_learners) if two_lang_learners else 'NO')


    1. Ответ
      Ответ дан nikinik20042
      не работает
Самые новые вопросы