Squares on Grid Lines
시간 제한4초메모리 제한2048 MB
쿼리로 주어진 넓이마다 n x n 격자 안에서 네 변의 점을 꼭짓점으로 하는 정사각형의 배치 수를 세고, 무한히 많으면 -1을 출력한다.
문제
You have a square of side length on a 2D plane, partitioned into a grid of square cells, totaling cells.
Your task is to answer queries, numbered from to , described below. In query , you are given a real number , and you must count the number of ways to place four points on the plane such that
- each point lies on the boundary of a cell (not necessarily the same), and
- the four points form the vertices of a square with area .
Here, the edges of the square formed by these points do not need to be parallel to the edges of the cells. If there are infinitely many valid placements, you must report that as your answer.
Two placements are considered different if there exists a point that appears in one placement but not in the other.
입력
The first line of input contains two integers and (, ). The -th of the next lines contains a real number (), given with exactly two digits after the decimal point.
출력
Output lines. The -th line should contain the number of valid placements for query . If infinitely many exist, output -1 instead.