Python 根据另一阵列中的可用范围调整numpy阵列
我有一个numpy数组(a),它表示几个活动的开始时间。我还有另一个numpy数组(b)的活动无法运行的时间。如何找到根据(b)及其年乘法(365*1)+b,(365*2)+b,(365*3)+b调整(a)的数组(c)。。。(365*n)+b 例如,如果我们将(a)中的第一个活动从0开始,则应根据(b)将其调整为从8开始,因为时段0-7不可用。这将自动将从7开始的第二个活动转换为从15=(7+8)开始。第三项活动从76开始,应在84开始,但84是一个无法操作的日子。因此,它必须在85到101之间部分运行,而该活动的另一部分必须在105之后继续,因为101-105范围不可用。生成的数组(c)应通过调整数组(a)中第四个活动的开始时间(从107开始)来反映此拆分 因此,在概念上,数组(c)的大小应该与数组(a)的大小相同,前四个值应该是:Python 根据另一阵列中的可用范围调整numpy阵列,python,list,numpy,schedule,Python,List,Numpy,Schedule,我有一个numpy数组(a),它表示几个活动的开始时间。我还有另一个numpy数组(b)的活动无法运行的时间。如何找到根据(b)及其年乘法(365*1)+b,(365*2)+b,(365*3)+b调整(a)的数组(c)。。。(365*n)+b 例如,如果我们将(a)中的第一个活动从0开始,则应根据(b)将其调整为从8开始,因为时段0-7不可用。这将自动将从7开始的第二个活动转换为从15=(7+8)开始。第三项活动从76开始,应在84开始,但84是一个无法操作的日子。因此,它必须在85到101之间
c=[8,15,86,121,...
谢谢你的帮助
注意:数组(a)未排序,顺序很重要 所有的活动都很长吗?让我们一步一步来。首先,尝试基于Python列表而不是Numpy数组找到一个有效的解决方案。一旦成功,我们可以优化代码以使用Numpy。创建输出列表
c=[]
并向其附加解决方案:c.append(4)
使用Python的中的运算符查找列表中是否有与中的组合的内容。对于b
中的值和a
中的值,还需要模运算符。
c=[8,15,86,121,...