호빗들은 운과 기술이 어우러진 놀이를 즐긴다. 그중 하나는 우리의 포커와 매우 비슷하지만, 카드 한 벌의 구성과 규칙이 조금 다르다.
따라서 한 벌은 $21 \times 5 = 105$장으로 이루어지며, 포커와 마찬가지로 한 "핸드"는 5장의 카드로 구성된다.
주어진 핸드가 스프레드(spread) 인지, 그리고 레인보우(rainbow) 인지를 판별하라.
스프레드. 무늬는 무시하고 값만 본다. 어떤 두 카드의 값 차이가 다른 어떤 두 카드의 값 차이와도 결코 같지 않을 때, 즉 모든 카드 쌍의 값 차이가 서로 다를 때 그 핸드는 스프레드이다.
예를 들어 값이 1, 2, 4, 8, 16인 핸드는 스프레드이다. 모든 값 쌍의 절댓값 차이가 서로 다르기 때문이다.
| 첫 번째 카드 | 두 번째 카드 | 차이 |
|---|---|---|
| 1 | 2 | 1 |
| 1 | 4 | 3 |
| 1 | 8 | 7 |
| 1 | 16 | 15 |
| 2 | 4 | 2 |
| 2 | 8 | 6 |
| 2 | 16 | 14 |
| 4 | 8 | 4 |
| 4 | 16 | 12 |
| 8 | 16 | 8 |
레인보우. 핸드가 5종류의 무늬를 정확히 하나씩 포함할 때 그 핸드는 레인보우이다.
첫 번째 줄에 테스트 케이스의 수 $T$가 주어진다 ($T < 100$).
다음 $T$개의 줄에는 각각 하나의 핸드가 주어진다. 하나의 핸드는 10개의 정수로 주어지며, 카드 5장에 대해 카드마다 정수 2개가 온다. 각 카드에서 첫 번째 정수는 무늬(0 이상 4 이하의 정수)이고, 두 번째 정수는 값(1 이상 21 이하의 정수)이다.
각 테스트 케이스마다, 해당 핸드가 스프레드인지와 레인보우인지를 한 줄에 출력한다.
각 줄의 형식은 다음과 같아야 한다. 먼저 스프레드 판정을 폭 24칸의 왼쪽 정렬 필드(오른쪽을 공백으로 채움)에 출력하고, 곧이어 레인보우 판정을 출력한다.
Have a spread. 또는 Do not have a spread. 이다.Have a rainbow. 또는 Do not have a rainbow. 이다.