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 |