
그림 1. 울타리 모양의 예시
A 씨는 꽃나무 울타리로 둘러싸인 집에 살고 싶어 한 설계 회사에 집 설계를 맡겼다. 완성된 설계도는 마음에 들었지만, 마당이 조금 더 넓었으면 했다. 설계도에 그려진 울타리는 안쪽으로 오목하게 들어간 부분이 없는 볼록한 모양이고, 마을 뒷산에서 내려다보았을 때 보기 좋아야 하므로 그 생김새는 그대로 유지해야 한다. 즉, 각 변의 길이의 비율과 이웃한 두 변이 이루는 각도는 바꿀 수 없으며, 울타리 전체를 같은 비율로 확대하거나 축소하는 것만 가능하다.
울타리 공사 비용은 울타리의 전체 길이에 비례한다. 울타리가 감싸는 안쪽 땅의 넓이를 바꾸면 (모양은 그대로 둔 채 크기만 조절하면) 울타리의 길이도 함께 달라지고, 따라서 계약 금액도 달라진다. 감싸고 싶은 땅의 넓이가 주어졌을 때, 같은 모양의 울타리로 그 넓이를 감싸려면 울타리가 얼마나 길어야 하는지 구하여라.
입력은 표준 입력으로 주어진다. 첫 줄에는 테스트 케이스의 개수 T (1≤T≤20)가 주어진다.
각 테스트 케이스는 다음과 같이 주어진다. 첫 줄에는 울타리로 감싸고자 하는 땅의 넓이 x가 주어진다. 둘째 줄에는 울타리의 방향이 꺾이는 지점(꼭짓점)의 개수 N (3≤N≤10000)이 주어진다. 이어지는 N개의 줄에는 각 꼭짓점의 x좌표와 y좌표가 공백으로 구분되어, 시계 방향 또는 반시계 방향 순서대로 한 줄에 하나씩 주어진다.
좌표와 넓이는 실수이다. 길이의 단위는 m, 넓이의 단위는 m²이다. 주어지는 울타리 모양은 항상 볼록하다.
각 테스트 케이스마다, 감싸는 넓이가 정확히 x가 되도록 주어진 모양을 (닮음을 유지한 채) 확대 또는 축소했을 때의 울타리 전체 길이를 한 줄에 하나씩 출력한다. 길이는 소수점 아래 넷째 자리에서 반올림하여, 항상 넷째 자리까지 있는 고정 소수점 형식으로 (예: 8.0000) 출력한다.