Задача Woods
Фермеры - герои задач Garden и NewGarden снова получили в совместное владение сад прямоугольной формы размером 2*N, разделенный тропинками на одинаковые квадратные участки 1*1. На этот раз было решено выращивать фруктовые дерева. У фермеров имеется достаточное количество саженцев K видов, среди которых есть мешающие друг другу, если их сажать на соседних (имеющих общую сторону) участках. Чтобы фруктовые деревья плодоносили, на каждом участке нужно сажать ровно по одному дереву, и на соседних участках не должны расти "мешающие" деревья. Помогите фермерам подсчитать количество способов посадки деревьев так, чтобы они все плодоносили.
Технические условия. Программа Woods читает с клавиатуры через пробелы целые числа N и К (1<=N<=100, 2<=K<=5), далее количество пар видов деревьев, которые нельзя сажать на соседних участках S (0<=S<K*(K+1)/2), далее S пар номеров видов деревьев. Никакая пара не повторяется. Возможно, что одинаковые деревья мешают друг другу. Программа выводит на экран искомое количество способов по модулю 2010.
Примеры
Ввод 3 2 0
Вывод 64
Ввод 2 4 4 2 2 1 2 1 3 3 4
Вывод 37
© LIKT 1998-2018