달리기 속력 측정

아직 제출이 없습니다시간 제한2초메모리 제한256 MB

문제

코치 민혁이는 선수 유라의 체력을 재려고 ll미터 달리기를 시킨다. 유라는 출발선에서 결승선까지 v1v_1 이상 v2v_2 이하인 실수 속력으로 일정하게 달린다. 민혁이는 그 속력이 정확히 얼마인지 모른다.

기록을 잴 타이머를 두고 온 민혁이는 다른 방법으로 속력의 범위를 좁히기로 한다. 민혁이는 원하는 시각에 코스 위의 한 지점으로 가서 유라가 그 지점에 이미 도달했는지를 확인한다. 지점은 출발점에서 xx미터 떨어진 곳이고 0xl0 \le x \le l이다. 확인의 결과는 "이미 도달했다"와 "아직 도달하지 않았다" 둘 중 하나다.

지점으로 가는 데 최소 ss초가 걸린다. 그래서 출발 후 ss초가 지나기 전에는 첫 확인을 할 수 없고, 한 번 확인한 뒤에도 ss초가 지나기 전에는 다음 확인을 할 수 없다. kk번째 확인은 아무리 빨라도 출발 후 k×sk \times s초에 이루어진다.

민혁이는 앞선 확인의 결과를 보고 다음 확인의 시각과 지점을 정한다. 확인을 모두 마쳤을 때 결과와 모순되지 않는 속력 구간의 길이가 tt 이하이면, 민혁이는 오차 ±t/2\pm t/2 안에서 유라의 속력을 말할 수 있고 측정에 성공한 것이다.

유라의 속력이 무엇이든 확인 횟수가 가장 적도록 민혁이가 전략을 짤 때, 최악의 경우의 확인 횟수를 구하여라.

입력

첫째 줄에 테스트 케이스의 수 cc (1c1001 \le c \le 100)가 주어진다.

이어지는 cc개의 줄에 각 테스트 케이스의 정수 ll, v1v_1, v2v_2, tt, ss가 공백으로 구분되어 주어진다. (1l,v1,v2,t,s1091 \le l, v_1, v_2, t, s \le 10^9, v1<v2v_1 < v_2)

출력

각 테스트 케이스마다 답을 한 줄에 하나씩 출력한다.

오차 ±t/2\pm t/2 안에서 유라의 속력을 알아낼 방법이 없으면 impossible을 출력한다. 알아낼 수 있으면 최악의 경우에 필요한 확인 횟수의 최솟값을 출력한다. 확인을 한 번도 하지 않아도 되면 0을 출력한다.