#P1056H. Detect Robots
Detect Robots
No submission language available for this problem.
Description
You successfully found poor Arkady near the exit of the station you've perfectly predicted. You sent him home on a taxi and suddenly came up with a question.
There are $n$ crossroads in your city and several bidirectional roads connecting some of them. A taxi ride is a path from some crossroads to another one without passing the same crossroads twice. You have a collection of rides made by one driver and now you wonder if this driver can be a robot or they are definitely a human.
You think that the driver can be a robot if for every two crossroads $a$ and $b$ the driver always chooses the same path whenever he drives from $a$ to $b$. Note that $a$ and $b$ here do not have to be the endpoints of a ride and that the path from $b$ to $a$ can be different. On the contrary, if the driver ever has driven two different paths from $a$ to $b$, they are definitely a human.
Given the system of roads and the description of all rides available to you, determine if the driver can be a robot or not.
Each test contains one or more test cases. The first line contains a single integer $t$ ($1 \le t \le 3 \cdot 10^5$) — the number of test cases.
The first line of each test case contains a single integer $n$ ($1 \le n \le 3 \cdot 10^5$) — the number of crossroads in the city.
The next line contains a single integer $q$ ($1 \le q \le 3 \cdot 10^5$) — the number of rides available to you.
Each of the following $q$ lines starts with a single integer $k$ ($2 \le k \le n$) — the number of crossroads visited by the driver on this ride. It is followed by $k$ integers $c_1$, $c_2$, ..., $c_k$ ($1 \le c_i \le n$) — the crossroads in the order the driver visited them. It is guaranteed that all crossroads in one ride are distinct.
It is guaranteed that the sum of values $k$ among all rides of all test cases does not exceed $3 \cdot 10^5$.
It is guaranteed that the sum of values $n$ and the sum of values $q$ doesn't exceed $3 \cdot 10^5$ among all test cases.
Output a single line for each test case.
If the driver can be a robot, output "Robot" in a single line. Otherwise, output "Human".
You can print each letter in any case (upper or lower).
Input
Each test contains one or more test cases. The first line contains a single integer $t$ ($1 \le t \le 3 \cdot 10^5$) — the number of test cases.
The first line of each test case contains a single integer $n$ ($1 \le n \le 3 \cdot 10^5$) — the number of crossroads in the city.
The next line contains a single integer $q$ ($1 \le q \le 3 \cdot 10^5$) — the number of rides available to you.
Each of the following $q$ lines starts with a single integer $k$ ($2 \le k \le n$) — the number of crossroads visited by the driver on this ride. It is followed by $k$ integers $c_1$, $c_2$, ..., $c_k$ ($1 \le c_i \le n$) — the crossroads in the order the driver visited them. It is guaranteed that all crossroads in one ride are distinct.
It is guaranteed that the sum of values $k$ among all rides of all test cases does not exceed $3 \cdot 10^5$.
It is guaranteed that the sum of values $n$ and the sum of values $q$ doesn't exceed $3 \cdot 10^5$ among all test cases.
Output
Output a single line for each test case.
If the driver can be a robot, output "Robot" in a single line. Otherwise, output "Human".
You can print each letter in any case (upper or lower).
Samples
1
5
2
4 1 2 3 5
3 1 4 3
Human
1
4
4
3 1 2 3
3 2 3 4
3 3 4 1
3 4 1 2
Robot
Note
In the first example it is clear that the driver used two different ways to get from crossroads $1$ to crossroads $3$. It must be a human.
In the second example the driver always drives the cycle $1 \to 2 \to 3 \to 4 \to 1$ until he reaches destination.