求助一道蓝桥杯国赛题目!
  • 板块学术版
  • 楼主fupincheng
  • 当前回复2
  • 已保存回复2
  • 发布时间2023/5/28 15:13
  • 上次更新2023/10/23 14:28:35
查看原帖
求助一道蓝桥杯国赛题目!
879604
fupincheng楼主2023/5/28 15:13

题目描述

某公司有多间会议室,可使用时间为8点到22点,同一会议室同一时间段只能由一个部门使用。

一天有 N (1≤N≤50) 个部门计划使用同一间会议室,且已知每个部门计划使用的开始时间 S(8≤S≤21) 和结束时间 E (S<E≤22)。请计算出这间会议室最多可以安排多少个部门使用。

例如: N = 3,3个部门计划使用的开始及结束时间依次为 (9,12),(10,15),(15,20)。

10~12点的时间段,部门1和部门2都计划使用,所以只能由一个部门使用;15~20点的时间段,只有部门3计划使用,所以这间会议室最多可以安排2个部门使用 (部门1和部门3或者部门2和部门3)。

输入描述

第一行输入一个正整数 N (1≤N≤50),表示计划使用同一间会议室的部门数量 接下来输入N行,每行两个正整数 S 和 E (8≤S≤21,S<E≤22),分别表示某部门计划使用会议室的开始时间和结束时间,正整数之间以一个空格隔开

输出描述

输出一个整数,表示这间会议室最多可以安排多少个部门使用

样例输入

3 9 12 10 15 15 20

样例输出

2

代码

n=int(input())
t={8:0,9:0,10:0,11:0,12:0,13:0,14:0,15:0,16:0,17:0,18:0,19:0,20:0,21:0,22:0}
m=1
for i in range(n):
    a,b=map(int,input().split())
    for j in range(a,b):
        if t[j]>0:
            break
        t[j]=m
    else:m+=1
print(max(t.values()))
2023/5/28 15:13
加载中...