希望使用数学模型或者python或者C++回答

如果约束条件A > B > C > D
f(A,B,C,D,N,X)=XB+D+(N-X)C
H(N,B)=N
B
g(A,B,C,D,N,X)=X
B+A+(N-X)*C
求f(A,B,C,D,N,X)与g(A,B,C,D,N,X)最大值
以及的范围
H(N,B)> f(A,B,C,D,N,X), g(A,B,C,D,N,X)
H(N,B)< f(A,B,C,D,N,X), g(A,B,C,D,N,X)

因为没有太多的限制条件,我想可以自己先限制一下取值范围,在逐步放宽限制
我的假设是:因为求的是最大值,所以第一步限制A,B,C,D,N,X只取正整数,且限制最大值小于10,即10>A > B > C > D,随后逐步放大最大值限制,如20,30等等。
就目前我爬出来的数据显示,列表flist的最大值与最后一次取值的数值相同,可判断为单调递增,因此变量取值越大,函数也越大,最大值为正无穷

# A > B > C > D
def f(A,B,C,D,N,X):
    return X*B + D + (N-X)*C
 
def H(N,B):
    return N * B
 
def g(A,B,C,D,N,X):
    return X * B + A + (N-X) *C
num = 30
flist = []
for a in range(num):
    for b in range(a):
        for c in range(b):
            for d in range(c):
                for n in range(num):
                    for x in range(num):
                        f1 = f(a,b,c,d,n,x)
                        flist.append(f1)
max(flist) == fl

ABCD有具体的取值范围吗?

我想问一下最后的范围是什么意思?
如果不看范围的话,最大值可以取到正无穷

话说
f函数没有a参数啊

参考陕西人民出版社,陈军斌,赵来军著的《最优化理论与方法》,第7章第五节的动态规划

被难住了

可以定义一个函数,给你参考,如有帮助,请采纳

以下是max()方法的语法:

max( x, y, z, .... )

参数

x -- 这是一个数值表达式。

y -- 这也是一个数值表达式。

z -- 这是一个数值表达式。

返回值

此方法返回其参数的最大值。

例子

下面的例子显示了max()方法的使用。

#!/usr/bin/python

print "max(80, 100, 1000) : ", max(80, 100, 1000)

print "max(-20, 100, 400) : ", max(-20, 100, 400)

print "max(-80, -20, -10) : ", max(-80, -20, -10)

print "max(0, 100, -400) : ", max(0, 100, -400)

当我们运行上面的程序,它会产生以下结果:

max(80, 100, 1000) : 1000

max(-20, 100, 400) : 400

max(-80, -20, -10) : -10

max(0, 100, -400) : 100


本人最近也在准备数模,题主是不是漏了f和g的范围没给出来😂没有别的条件求解出来的是无穷大呢
……是我理解错了?难道我理解得…

参考一下这个
https://blog.csdn.net/qq_40498551/article/details/89278247

https://blog.csdn.net/cr496352127/article/details/55270988

竟然没看懂题意,愚钝了

暂存一下,待标记

# A > B > C > D

def f (A,B,C,D,N,X):
    return X*B + D + (N-X)*C

def H(N,B):
    return N * B

def g(A,B,C,D,N,X):
    return X * B + A + (N-X) *C