Uma nova lanchonete abriu na cidade, prometendo um menu com a maior variedade de sanduíches da região. A cada dia o Chef de cozinha compra ingredientes distintos e prepara o menu usando esses ingredientes. Infelizmente não é possível ter sanduíches com qualquer combinação de ingredientes: a cada dia o Chef determina que pares de ingredientes não podem ser utilizados no mesmo sanduíche, porque ele considera que esses ingredientes “não combinam”.
Por exemplo, suponha que num determinado dia é igual a quatro e os ingredientes são queijo, presunto, goiabada e azeitona, e é igual a dois: os pares (goiabada, presunto) e (azeitona, goiabada) não podem ser utilizados no mesmo sanduíche. Nesse dia, alguns dos sanduíches que podem ser feitos são:
Alguns dos sanduíches que não podem ser feitos são:
Dados os ingredientes e os pares de ingredientes que não combinam, sua tarefa é determinar qual o máximo número de sanduíches diferentes que podem ser feitos. Dois sanduíches e são considerados diferentes se contém um ingrediente que não está presente em ou se contém um ingrediente que não está presente em . Um sanduíche deve conter ao menos um ingrediente.
A primeira linha contém dois números inteiros e , indicando respectivamente o número de ingredientes e o número de pares de ingredientes que não combinam. Os ingredientes são identificados por números de a . Cada uma das linhas seguintes contém dois números inteiros e que representam um par de ingredientes que não combinam.
Seu programa deve produzir uma única linha, o número de sanduíches diferentes que podem ser feitos.
3 2
2 3
1 2
4
3 0
7
3 3
1 2
2 3
1 3
3