TouchStone
  请登录后使用
登录 注册
距离CSP第一轮: ??天 距离CSP第二轮: ??天 距离NOIP还有: ??天
 系统首页  练习题库  考试列表  判题结果  信息发布  解题排行
  • 首页
  • 题库
  • P2280
  • 题目
  • P2280学妹奖学金
    限制 : 时间限制 : 10000 MS   空间限制 : 265536 KB
    问题描述

    NK中学的电竞社(电脑竞赛社)有n(n<=50000)个同学,编号1到n。往届的学长们设立了“学妹奖学金”,电竞社每月都会举行一场编程比赛,每次比赛中没有得过奖学金的学生中得分最高的同学将会获得“学妹奖学金”。因为奖学金的总金额有限,所以每个同学最多只能获得一次“学妹奖学金”,也就意味着如果一个同学得过“学妹奖学金”了,那么下一次比赛即使他拿的最高分也不能再得一次。

    到目前为止,比赛总共举办了m(m<=500)场,请找出每场比赛后,获得“学妹奖学金“的人数。

    电竞社社长只张贴出了第一场比赛所有同学的得分情况。以后的每场比赛,只张贴成绩发生变化的同学的成绩,也就是如果一个同学的第i场比赛成绩和第i-1场相同,那么第i场比赛结束后他的成绩将不会被张贴出来。

    输入格式

    第一行,两个整数n和m。
    第二行,n个空格间隔的整数,表示第一场比赛后编号1到n的学生的成绩(0<=成绩<=100000000)。
    接下来描述后m-1场比赛的情况,对于每场比赛:
    第一行,一个整数k和t,表示与上一场相比,有k个同学的成绩发生了变化,并且t个新同学加入电竞社并参加了这场比赛(0<=k<=100,t<=100)
    接下来k行,每行两个整数x和y,x表示发生变化的学生的编号,y表示该同学在该场比赛的成绩。
    接下来t行,每行两个整数x和y,x表示新加入的同学的编号,y表示该同学在该场比赛的成绩。

    输出格式

    m行,每行一个整数。第i个整数表示第i场比赛后获得奖学金的人数。
    注意:如果所有人都获过奖输出0

    样例输入

    7 3
    89 92 35 76 23 51 88
    2 1
    3 90
    5 80
    8 90
    1 2
    1 60
    9 88
    10 88

    样例输出

    1
    2
    3

    提示

    第一场,最高分是2号同学92分
    第二场,得奖学金的是3号和新加入的8号,90分。最高分2号92分已经得过奖学金了,所以不再考虑
    第三场,得奖学金的是7号、9号和10号,得分88,这三个是没得过奖学金的学生中得分最高的。

    堆练习,注意细节