Fegla의 스쿠터 시험 주행

아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

Fegla는 건물 안에서 작은 스쿠터를 타고 다닌다. 대회 심사를 맡고 있던 날 스쿠터가 고장 났고, Hamzawy가 심사실에서 고쳐 주었다. Fegla는 수리가 제대로 됐는지 확인하려고 심사실을 나가 건물을 한 바퀴 돈 뒤 출발한 방으로 돌아오려 한다. 심사진을 오래 비워 둘 수 없으니 지나는 방의 수가 가장 적은 경로를 고르려 하는데, 출발한 방 말고 다른 방을 적어도 하나는 지나야 한다.

Fegla는 문을 열지 못하고 스쿠터로 밀기만 하므로 두 방을 잇는 연결은 정해진 한 방향으로만 통과할 수 있다.

방의 개수와 방 사이의 연결이 주어진다. 어떤 방에서 출발해 다른 방을 하나 이상 지난 뒤 같은 방으로 돌아오는 순환 경로 가운데, 지나는 서로 다른 방의 개수가 가장 적은 값을 구하라. 예를 들어 방 11에서 방 22, 방 33을 거쳐 방 11로 돌아오는 경로가 지나는 방은 33개다. 조건상 답은 항상 22 이상이다.

입력

첫 줄에 테스트 케이스의 개수 TT가 주어진다 (1T1001 \le T \le 100).

각 테스트 케이스의 첫 줄에는 방의 개수 NN과 연결의 개수 MM이 공백으로 구분되어 주어진다 (1N10001 \le N \le 1000, 0M1060 \le M \le 10^6).

이어지는 MM개의 줄에는 서로 다른 두 정수 uuvv가 공백으로 구분되어 주어진다 (1u,vN1 \le u, v \le N). 방 uu에서 방 vv로 가는 연결이 있다는 뜻이다. 같은 두 방 사이에 연결이 여러 개 있을 수 있고, 두 방을 잇는 경로도 여러 개일 수 있다.

출력

각 테스트 케이스마다 한 줄에 Case n: R 형식으로 출력한다. nn11부터 시작하는 테스트 케이스 번호이고, RR은 조건을 만족하는 가장 짧은 순환 경로가 지나는 서로 다른 방의 개수다. 그런 경로가 없으면 RR1-1이다.