题解 3182: 蓝桥杯2023年第十四届省赛真题-管道

来看看其他人写的题解吧!要先自己动手做才会有提高哦! 
返回题目 | 我来写题解

筛选

很多注意事项的二分🆒

importsysinput=lambda:sys.stdin.readline().strip()n,le=map(int,input().split())f=[[0]*2foriinrange(n)]foriinrange(n):f[i][0],

蓝桥杯2023年第十四届省赛真题-管道

首先根据题意,假如说在t时刻满足题目要求,那么比t大的时刻也一定满足要求,故具有单调性,此时可以想到用二分来做。对于每个二分出来的时刻,可以将每一个水阀所能检测的范围算出来(若该时刻小于水阀打开的时刻,则该水阀跳过)。此时问题就变成了对于这些所检测出来的范围是否能覆盖整个管道,
优质题解

二分时间+区间覆盖

解题思路:1、对时间进行二分搜索,2、对于每个判断的时间,可以每个阀门视为一个区间,判断由此得到区间组是否能够覆盖整个大区间注意事项:1、右边界需要开大一点,10的9次方不行,需要开到10的10次方2、得到的区间一定要先排序(阀门开的时间不同,

二分时间+区间合并

摘要:解题思路:注意事项:参考代码:def sort1(m):    a,b=m    return b,adef sort2(m):    a,b=m    return a,-bdef check(mi……