Решение задачи Махмуд, Ехаб и MEX с Codeforces

Без пояснения   Просмотров: 30


Доктор Зло похитил Махмуда и Ехаба в злую страну из-за их плохого выступления на Всезлейской Олимпиаде по Информатике. Доктор согласился отпустить ребят, если они решат несколько задач.

Доктор Зло интересуется теорией множеств, поэтому у него есть множество из n целых чисел. Доктор Зло называет множество злым, если MEX от этого множества равен x. MEX множества чисел называется минимальное неотрицательное целое число, которое в нём не содержится. Например, MEX множества {0, 2, 4} равен 1, а MEX множества {1, 2, 3} равен 0.

Доктор Зло собирается сделать своё множество злым. Для этого он хочет проделать над ним некоторое количество операций. Во время каждой операции он может добавить в множество любое неотрицательное целое число или удалить из множества любое число, которое в нём содержится. Какое минимальное число операций ему придётся проделать, чтобы сделать массив злым?

Код

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int n,x,a[190],p;
	scanf("%d%d",&n,&x);
	int s=0,d=0;
	while(n--)
	{
		cin>>p;
		if(p<x) s++;
		if(p==x) d++;
	}
	printf("%d",d+x-s);
}

         

Администратор Photo Автор: Администратор



Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться