Гра#11401

Гра (Розбір)

Будемо моделювати гру за допомогою структури даних — множини (set). Множина буде зберігати всі числа, записані на папері.

Кожного разу, коли Фідан називає число, Фуад перевіряє, чи міститься воно в множині:

Кількість чисел, що залишилися на папері до кінця гри, збігається з кількістю елементів у множині.

Приклад

Промоделюємо роботу множини для першого та другого прикладів.

В кінці гри:

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

Читаємо кількість чисел .

scanf("%d", &n);

Послідовно обробляємо чисел, названих Фіданом.

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

Кожного разу, коли Фідан називає число :

  if (s.find(x) == s.end())
    s.insert(x);
  else
    s.erase(x);
}

Виводимо відповідь — розмір множини .

printf("%d\n", s.size());

Python реалізація

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

n = int(input())
lst = map(int,input().split())

Оголошуємо множину.

s = set()

Послідовно обробляємо числа, названі Фіданом.

for x in lst:

Кожного разу, коли Фідан називає число :

  if x in s:
    s.remove(x)
  else:
    s.add(x)

Виводимо відповідь — розмір множини .

print(len(s))