Пусть n - число вершин многоугольника, d - количество диагоналей. Каждая вершина соединяется диагоналями со всеми вершинами, кроме двух соседних и себя самой. Таким образом, из каждой вершины можно провести (n-3) диагонали. Всего можно провести n*(n-3) диагоналей. Однако, мы сосчитали каждую диагональ дважды, тогда

В данной задаче d=20, то есть

Второй корень не подходит по смыслу, значит, число вершин этого многоугольника равно 8, а значит и число сторон также равно 8.