Unrumpf
시간 제한5초메모리 제한256 MB
무작위 정수 점 10개에서 100개 사이로 만들어진 볼록 껍질을 보고, 그 껍질을 만든 점의 개수를 추측합니다.
문제
'Rumpf' 문제의 브루트포스 풀이를 준비하면서, 다음 작업을 반복하는 프로그램을 작성했다. 10 이상 100 이하의 정수 를 균등한 확률로 무작위로 하나 고른다. 그다음 정수 좌표를 가진 점을 개 생성한다. 각 좌표는 0 이상 이하의 모든 정수 중에서 서로 독립적으로 균등하게 뽑는다. 마지막으로 이 점들의 볼록 껍질(convex hull)을 구한다.
이 프로그램으로 생성된 다각형 10000개가 주어진다. 각 다각형마다 생성에 사용된 값을 추측하라.
입력
첫 줄에 처리할 볼록 껍질의 개수 가 주어진다. 는 항상 10000이다. 이어지는 개의 줄에는 볼록 껍질이 하나씩 주어진다. 각 줄은 꼭짓점의 개수 와, 이어서 개의 정수 쌍(꼭짓점의 좌표)으로 이루어진다. 꼭짓점은 반시계 방향으로 주어지며, 연속한 세 꼭짓점이 한 직선 위에 놓이지 않는다.
주어진 볼록 껍질은 위에서 설명한 방법으로 생성되었음이 보장된다.
출력
개의 줄을 출력한다. 각 줄에는 해당 볼록 껍질을 생성할 때 사용된 초기 무작위 꼭짓점 개수 에 대한 추측값을 정수 하나로 출력한다. 추측값은 10 이상 100 이하여야 한다.
10000개 볼록 껍질 전체에 대해, 추측값의 자연로그와 실제 의 자연로그 차이의 절댓값 평균이 0.2 미만이면 정답으로 인정한다.
예제에서는 모든 추측값이 10 이상 100 이하이기만 하면 정답으로 인정한다.
제한
이 문제에는 예제가 아닌 테스트 케이스가 10개 있다.