You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何校验sequence中receiveList元素是否全部早于shipList元素出现

列表顺序校验实现

校验规则

sequence中所有属于receiveList的元素,必须全部出现在任意一个shipList元素之前。若存在任一receiveList元素出现在shipList元素之后,则判定不符合规则。

输入示例

receiveList = [1,2,3]
shipList = [4,5,6]
sequence = [3,1,6,2,4,5]

校验结果

raise('不可行的解决方案')

原因:sequence中的元素2属于receiveList,但它出现在shipList元素6之后,违反了校验规则。

Python实现代码

def validate_sequence(receive_list, ship_list, sequence):
    ship_element_seen = False
    for item in sequence:
        if item in ship_list:
            ship_element_seen = True
        # 若已出现过船运元素,又遇到收货元素则抛出异常
        if ship_element_seen and item in receive_list:
            raise ValueError('不可行的解决方案')
    return True

# 测试示例代码
receiveList = [1,2,3]
shipList = [4,5,6]
sequence = [3,1,6,2,4,5]
validate_sequence(receiveList, shipList, sequence)

内容的提问来源于stack exchange,提问作者Jess

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 19:12:45