무방향 그래프에서 어려운 문제 몇 개는 홀수 싸이클이 없으면 다항 시간에 풀린다. 방향성 그래프에서도 같은 성질이 성립하는지 확인하려면 먼저 방향성 그래프에 홀수 싸이클이 있는지부터 판정해야 한다.
G를 자기 루프와 중복 간선이 없는 단순 방향성 그래프라고 하자. 정점 v와 w가 G에 있을 때, v에서 w로 가는 경로는 정점 열 (u1,u2,…,ul)이다. 여기서 ui는 서로 다르고, u1=v, ul=w이며, 1≤i<l인 모든 i에 대해 ui에서 ui+1로 가는 방향성 간선이 있다. l≥2이고 ul에서 u1로 가는 방향성 간선도 있으면 이 경로를 싸이클이라 하고, l을 싸이클의 길이라 한다. 길이가 홀수인 싸이클이 홀수 싸이클이다.
강한 연결 요소는 서로 오갈 수 있는 정점을 모은 극대 집합이다. 모든 싸이클은 하나의 강한 연결 요소 안에 놓인다.
각 테스트케이스마다 그래프에 홀수 싸이클이 있는지 판정하고, 있으면 홀수 싸이클을 품은 강한 연결 요소가 그래프의 어디에 있는지도 정점 번호 하나로 밝힌다.

그림 1. 단순 방향성 그래프
첫 줄에 테스트케이스 수 T가 주어진다. (1≤T≤20)
각 테스트케이스의 첫 줄에는 정점 수 N과 간선 수 M이 공백으로 구분되어 주어진다. (1≤N≤100000, 0≤M≤1000000) 정점 번호는 1부터 N까지다.
이어지는 M개의 줄에는 간선이 한 줄에 하나씩 v w 형식으로 주어진다. 이는 v번 정점에서 w번 정점으로 가는 방향성 간선이 있다는 뜻이다. 그래프는 단순 방향성 그래프라서 v=w이고 같은 간선이 두 번 주어지지 않는다. 다만 v에서 w로 가는 간선과 w에서 v로 가는 간선이 함께 주어지는 것은 가능하다.
모든 테스트케이스의 N의 합은 100000 이하이고, M의 합은 1000000 이하이다.
각 테스트케이스마다 다음을 출력한다.
홀수 싸이클이 없으면 -1을 한 줄에 출력한다.
홀수 싸이클이 있으면 첫 줄에 1을 출력하고, 다음 줄에 홀수 싸이클을 포함하는 강한 연결 요소에 속한 정점 가운데 번호가 가장 작은 것을 출력한다. 그런 강한 연결 요소가 여러 개면 그 모두를 통틀어 가장 작은 정점 번호를 출력한다. 이 정점이 홀수 싸이클 위에 놓일 필요는 없고, 홀수 싸이클을 포함하는 강한 연결 요소에 속하기만 하면 된다.