TouchStone
  请登录后使用
登录 注册
 系统首页  练习题库  考试列表  判题结果  问题讨论与解答  统计信息与排名
  • 首页
  • 题库
  • P3782
  • 题目
  • P3782塔防杀怪
    限制 : 时间限制 : - MS   空间限制 : 165536 KB
    评测说明 : 1000ms
    问题描述

    有一款有趣的塔防游戏。
    游戏中有一条笔直的道路,道路由n块小方格构成(编号1到n)。
    游戏中有m个炮塔,第i个炮塔的攻击范围是[Li,Ri],攻击力为Di,也就是当有怪物经过第[Li,Ri]区间时,每走一格都会丢掉Di的生命值。
    共有k只怪兽(编号1到k),第i只怪兽一开始会出现在Xi号格子,生命值为Hi,怪兽会沿道路径直走向第n格。若怪兽的生命值<=0,它就死掉了。问,有多少只怪兽能存活下来(走出第n格时,生命值>0)。

    输入格式

    有多组测试数据,对于每组数据:

    第一行,一个整数N,表示道路的长度(0 < N <= 100000)
    第二行,一格整数M,表示炮塔的数量 (0 < M <= 100000)
    接下来M行,每行三个整数Li, Ri, Di 表示炮塔杀伤的范围和杀伤值(1 <= Li <= Ri <= N, 0 < Di <= 1000)
    接下来一行,一格整数K 表示怪兽的数量(0 < K <= 100000)
    接下来K行,每行两个整数Hi和Xi表示一只怪兽的生命值和出现地(0 < Hi <= 10^18, 1 <= Xi <= N) 

    输入以N=0作为结束

    输出格式

    若干行,每行一个整数对应一组数据的答案,表示存活的怪兽的数量

    样例输入

    5
    2
    1 3 1
    5 5 2
    5
    1 3
    3 1
    5 2
    7 3
    9 1
    0

    样例输出

    3

    提示

    样例说明,生命值为5,7,9的三只怪兽会存活下来


    来源  2014 Multi-University Training Contest 9