Ну если просто подставить результат выполнения уравнения в Random в качестве сида не подходит, то нужно написать свой класс, который принимает n в конструктор и реализовать метод nextInt(), который вернет результат уравнения. Также нужно учесть случаи n=0 и n=1. Это при условии, что мы решаем для целых чисел и известны a, b, c, d и m.
Это первое, что пришло в голову.