本帖最后由 On_fire 于 2023-1-17 21:45 编辑
VBA 一道需要优化的数学题! ( 超极难Sheet1(4) ) *
Sheet1是源数据,
R(A-B) 及S( C )同行两列是一组, 是要处理的数据项集合, 其中A和B为R的单一子元素,C是对应的值( *有同值的情况 )
*
数据关系如下,
1. 找到S列中的全局最小C值( 有同值的情况 ),作为全局基准值, 其对应的A-B为全局基准项,该基准项对应的子元素A和B作为标准子元素 (A-B维度下,一共最少2个或更多…? ) *注: 当C值有相同, 在A-B维度下, 多少个标准子元素是变量…?
2. 由标准子元素和各个其它元素的组合, 作为标准项(基准项衍生出每组序列的标准项,如题1-2是全局基准项(由3.9最小值得来), 其中1和2就是标准子元素,再用它来标定其它每个元素的全序列组合中的标准项, 比如元素3的全序列组合1-3,2-3....n-3, 其中1-3和2-3就是元素3的全序列组合中的2标准项;可以看出在A-B双螺旋的形式下,每组数据最多就2个标准项,如果是A-B-C就是3个标准项...以此类推, 这个维度同样决定了输出的行数,如题输出就是2行组合数据)
3. 输出结果:任意给出一个元素,列出其所有组合数据项,比如元素7,则列出7的所有组合项和其对应的标准值之差,(1-7,2-7...n-7)-(1-7,2-7)。形式如下:
任意元素:B
第一行组合数据
第1行标准组合 1-B C1; 第1行标准组合 1-B C1...
第1个非标准项 3-B C11; 第2个非标准项 4-B C12...
差值.... C11X; 差值.... C12X; ...
第二行组合数据
第2行标准组合 2-B C2; 第2行标准组合 2-B C2...
第1个非标准项 3-B C21; 第2个非标准项 4-B C22...
差值.... C21X; 差值.... C22X; ...
*
Sheet1(2)是部份模拟的计算过程及详细步骤
Sheet1(2)也是模拟的带排序的结果 ( 当C的差值是负值或等于0, 要输出带排序结果 ) Sheet1(3)是代码的参考代码 ( 注:C值没同值的情况! ) 下帖的55, 56, 63, 76楼的Real3代码都可参考 * Real4的Sheet1(4)是C值有同值下, 及更多的源资料. 这次要取多标准项及多标准子元素, 做处理, 也是这难题要再发帖的原因! *
这题的难度极大,
恳请大神, 老师出手帮忙...!!!
|