##### Canadian Computing Competition: 2003 Stage 1, Junior #2

Roy has a stack of student yearbook photos. He wants to lay the pictures on a flat surface edge-to-edge to form a filled rectangle with minimum perimeter. All photos must be fully visible. Each picture is a square with dimensions 1 unit by 1 unit.

For example, he would place 12 photos in the following configuration,
where each photo is indicated with an `X`

.

```
XXXX
XXXX
XXXX
```

Of course, he could orient them in the other direction, such as

```
XXX
XXX
XXX
XXX
```

which would have the same perimeter, 14 units.

Your program should repeatedly read a positive integer , the number of pictures to be laid out. For each input, it should print the smallest possible perimeter for a filled rectangle that is formed by laying all the pictures edge-to-edge. Also print the dimensions of this rectangle.

You may assume that there are less than photos. An input value of indicates that the program should terminate.

#### Sample Input

```
100
15
195
0
```

#### Sample Output

```
Minimum perimeter is 40 with dimensions 10 x 10
Minimum perimeter is 16 with dimensions 3 x 5
Minimum perimeter is 56 with dimensions 13 x 15
```

## Comments

Can someone check my code, when I try the input on PyCharm it works fine but it doesn't seem to work on DMOJ

notice that you are outputting "Minimum perimeter is

32.0with dimensions 6 x 10" indicating that you did division with "/" which returns a float instead of integer division "//" (line 13 in your most recent submission).as a side note i think they prefer people asking for help on the dmoj slack instead of the comment section

I only seem to be getting 80/100 with only one test case even though it appears to meet all the requirements? Anybody got any ideas?

Edit: Nvm my code did not work for when there was only 1 picture