시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 (추가 시간 없음) 1024 MB (추가 메모리 없음)120341819.355%

문제

영민이와 현빈이는 항상 저녁을 같이 먹는데, 항상 메뉴에 대한 의견 충돌이 있다. 그래서 공평하게 다트로 승부하여 이긴 사람이 정한 메뉴를 따르자는 합의를 하였다. 물론 이 둘은 다트를 잘 모르지만 프로그래밍을 좋아하므로, 아래와 같은 다트 규칙을 새로 정의하였다.

  • 다트 과녁은 볼록 $N$각형이다. 과녁의 꼭짓점을 이루는 임의의 세 점은 일직선이 아니다.
  • 만약 다트가 다트 과녁 내부에 명중하면, 다트 과녁의 넓이의 두 배 만큼의 점수를 얻는다.
  • 만약 다트가 다트 과녁 경계에 명중하면, 점수를 얻지 못한다.
  • 만약 다트가 다트 과녁 내부에 명중하지 못하면, 아래와 같이 점수를 계산한다.
    • 다트가 도달한 지점에서 다트 과녁에 두 개의 접선을 그린다. 만약 접선이 다트 과녁의 두 꼭짓점에 접하는 경우, 다트에 가까운 점이 접점이 된다.
    • 두 접점을 연결하는 선분을 그린다.
    • 선분으로 나누어진 다트 과녁의 두 영역에 대하여, 둘 중 크지 않은 영역의 넓이의 두 배 만큼의 점수를 얻는다.
  • 영민이와 현빈이는 다트를 각각 $M$번씩 던져서 얻은 점수를 $1\,000\,000\,007(=10^9+7)$로 나눈 나머지가 더 큰 사람이 승리한다.

입력

첫째 줄에 점의 수 $N$, 다트를 던지는 횟수 $M$이 주어진다. ($3 \leq N \leq 50\,000,\ 1 \leq M \leq 50\,000$)

둘째 줄부터 $N$줄에 걸쳐 다트 과녁의 꼭짓점들의 x좌표와 y좌표가 공백으로 구분되어 주어진다. 점은 반시계 방향으로 주어진다.

$N+2$번째 줄부터 $M$줄에 걸쳐 영민이가 던진 다트가 도달한 지점의 x좌표와 y좌표가 공백으로 구분되어 주어진다.

그 다음 $M$줄에 걸쳐 현빈이가 던진 다트가 도달한 지점의 x좌표와 y좌표가 공백으로 구분되어 주어진다.

주어지는 모든 좌표는 절댓값이 $4\times 10^8$ 이하인 정수이다.

출력

첫째 줄에는 영민이가 이긴 경우에는 "ym"을, 현빈이가 이긴 경우에는 "hb"를, 둘의 점수가 같은 경우에는 "same"을 따옴표를 제외하고 출력한다.

둘째 줄에는 영민이의 점수와 현빈이의 점수를 $1\,000\,000\,007(=10^9+7)$로 나눈 나머지를 공백으로 구분하여 출력한다.

예제 입력 1

4 1
1 1
-1 1
-1 -1
1 -1
0 0
2 2

예제 출력 1

ym
8 4

예제 입력 2

4 1
1 1
-1 1
-1 -1
1 -1
2 2
0 0

예제 출력 2

hb
4 8

예제 입력 3

4 1
1 1
-1 1
-1 -1
1 -1
0 0
0 0

예제 출력 3

same
8 8

예제 입력 4

10 7
-10 -6
-5 -7
2 -6
4 -4
6 4
6 6
0 6
-6 5
-8 3
-10 -1
-4 2
-3 -5
5 -5
4 -1
3 0
-3 4
-4 3
-3 0
1 -5
4 -4
4 -3
1 3
0 4
-3 5

예제 출력 4

ym
2016 2004

예제 입력 5

5 3
-9 -6
-8 -8
2 -9
6 9
-7 -2
-5 3
4 -3
4 0
-2 2
3 -2
-2 3

예제 출력 5

hb
30 518

출처

Camp > 숭고한 연합 Algorithm Camp > 2022 숭고한 연합 알고리즘 콘테스트 > Division 1 E번