Завзятий колекціонер метеликів#3966

Завзятий колекціонер метеликів (Розбір)

Номери видів метеликів у колекції будемо зберігати у множині . Тоді перевірка того, чи присутній метелик виду у Андрія Сергійовича, зводиться до перевірки належності числа множині .

Реалізація алгоритму

Усі номери видів метеликів із колекції зберігаємо у множині .

set<int> s;

Читаємо вхідні дані.

scanf("%d", &n);
for (i = 0; i < n; i++)
{
  scanf("%d", &x);
  s.insert(x);
}

Опрацьовуємо запитів.

scanf("%d", &m);
for (i = 0; i < m; i++)
{

Перевіряємо, чи є в колекції метелик виду . Відповідь буде ствердною, якщо число належить множині .

  scanf("%d", &x);
  if (s.find(x) != s.end()) puts("YES");
  else puts("NO");
}

Python реалізація

Читаємо вхідні дані.

n = int(input())
lst = list(map(int, input().split()))
m = int(input())
q = list(map(int, input().split()))

Усі номери видів метеликів із колекції зберігаємо у множині .

s = set(lst)

Обробляємо запитів.

for x in q:

Перевіряємо, чи є в колекції метелик виду . Відповідь буде ствердною, якщо число належить множині .

  if x in s:
    print("YES")
  else:
    print("NO")