Bipartido ou não?
É dado um grafo não-direcionado composto por vértices e
arestas. Se for possível dividir os vértices do grafo em dois conjuntos disjuntos
e
tal que cada aresta liga apenas vértices do conjunto
para vértices do conjunto
, é dito que o grafo é bipartido. Thiaguinho está estudando sobre grafos bipartidos, e por isso, quer descobrir se ao adicionar uma aresta ao grafo, ele será bipartido ou não. Ajude Thiaguinho a determinar, para cada
, se ao adicionar apenas as arestas com índice menor ou igual a
no grafo, ele será bipartido ou não.
Entrada
A primeira linha da entrada consiste de dois inteiros (
) e
(
), representando, respectivamente, a quantidade de vértices e arestas do grafo. As próximas
linhas contém dois inteiros,
e
(
), os dois vértices sendo ligados pela aresta
.
Saída
Para cada uma das arestas, seu programa deve imprimir "Sim" se o grafo for bipartido considerando apenas as arestas até o momento atual, ou "Não", caso contrário.
Exemplo
ENTRADA | SAÍDA |
4 5 1 2 2 3 2 4 3 4 1 4 |
Sim Sim Sim Não Não |