Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > x1+2x2+3x3+4x4=n


Автор: daimon2005 19.5.2006, 23:11
Дано уравнение

x1+2x2+3x3+4x4=n

Количество комбинаций при заданном n ?


 

Автор: MAKCim 20.5.2006, 08:31
Перебор?
x1,x2,..,x4 - могут быть < 0? 

Автор: skyboy 20.5.2006, 10:39
daimon2005, не совсем ясно, что требуется. Не мог бы привести пример? 

Автор: daimon2005 20.5.2006, 11:12
x1,x2,x3,x4 >0

1<n<100000

Необходимо подсчитать количество всех возможных вариантов при котором выполняется это уравнение.

x1+2x2+3x3+4x4=n

Перебор не пойдет(очень долго) 

Автор: MAKCim 20.5.2006, 11:23
разбиваешь на два уравнения
x+2y=p1
3z+4t=p2
находишь p1, p2 перебором
((0,n),(1,n-1),(2,n-2),...,(n,0))
для каждого p1, p2 решаешь Диофантово уравнение в целых числах с 2-мя неизвестными (есть готовая формула)
Цитата

x=x1+rb/(a,b); y=y1-ra/(a,b)
x1, y1 - любое решение ax+by=c, (a,b)=НОД(a,b), r - произвольное целое число

для пары p1,p2 считаешь кол-во x,y,z,t и суммируешь с общим кол-вом  

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)