A11250 | Nagini
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
Nagini, being a horcrux You-know-who created with the murder of Bertha Jorkins, has accumulated its army of snakes and is launching an attack on Hogwarts school.
Hogwarts' entrance can be imagined as a straight line (x-axis) from $1$ to $10^{5}$ . Nagini is launching various snakes at the Hogwarts entrance. Each snake lands parallel to the entrance, covering a segment at a distance $k$ from $x=l$ to $x=r$ . Formally, each snake can be imagined as being a line segment between points $(l,k)$ and $(r,k)$ . Note that $k$ can be both positive and negative, but not $0$ .
Let, at some $x$ -coordinate $x=i$ , there be snakes at point $(i,y_{1})$ and point $(i,y_{2})$ , such that $y_{1}>0$ and $y_{2}<0$ . Then, if for any point $(i,y_{3})$ containing a snake such that $y_{3}>0$ , $y_{1}<=y_{3}$ holds and for any point $(i,y_{4})$ containing a snake such that $y_{4}<0$ , $|y_{2}|<=|y_{4}|$ holds, then the danger value at coordinate $x=i$ is $y_{1}+|y_{2}|$ . If no such $y_{1}$ and $y_{2}$ exist, danger value is $0$ .
Harry wants to calculate the danger value of various segments of the Hogwarts entrance. Danger value for a segment $[l,r)$ of the entrance can be calculated by taking the sum of danger values for each integer $x$ -coordinate present in the segment.
Formally, you have to implement two types of queries:
- 1 l r k: a snake is added parallel to entrance from $x=l$ to $x=r$ at y-coordinate $y=k$ ( $l$ inclusive, $r$ exclusive).
- 2 l r: you have to calculate the danger value of segment $l$ to $r$ ( $l$ inclusive, $r$ exclusive).
Hogwarts' entrance can be imagined as a straight line (x-axis) from $1$ to $10^{5}$ . Nagini is launching various snakes at the Hogwarts entrance. Each snake lands parallel to the entrance, covering a segment at a distance $k$ from $x=l$ to $x=r$ . Formally, each snake can be imagined as being a line segment between points $(l,k)$ and $(r,k)$ . Note that $k$ can be both positive and negative, but not $0$ .
Let, at some $x$ -coordinate $x=i$ , there be snakes at point $(i,y_{1})$ and point $(i,y_{2})$ , such that $y_{1}>0$ and $y_{2}<0$ . Then, if for any point $(i,y_{3})$ containing a snake such that $y_{3}>0$ , $y_{1}<=y_{3}$ holds and for any point $(i,y_{4})$ containing a snake such that $y_{4}<0$ , $|y_{2}|<=|y_{4}|$ holds, then the danger value at coordinate $x=i$ is $y_{1}+|y_{2}|$ . If no such $y_{1}$ and $y_{2}$ exist, danger value is $0$ .
Harry wants to calculate the danger value of various segments of the Hogwarts entrance. Danger value for a segment $[l,r)$ of the entrance can be calculated by taking the sum of danger values for each integer $x$ -coordinate present in the segment.
Formally, you have to implement two types of queries:
- 1 l r k: a snake is added parallel to entrance from $x=l$ to $x=r$ at y-coordinate $y=k$ ( $l$ inclusive, $r$ exclusive).
- 2 l r: you have to calculate the danger value of segment $l$ to $r$ ( $l$ inclusive, $r$ exclusive).
输入格式
First line of input contains a single integer $q$ ( $1<=q<=5·10^{4}$ ) denoting the number of queries.
Next $q$ lines each describe a query. Each query description first contains the query type $type_{i}$ ( $1<=type_{i}<=2$ ). This is followed by further description of the query. In case of the type being $1$ , it is followed by integers $l_{i},r_{i}$ and $k_{i}$ (, $-10^{9}<=k_{i}<=10^{9}$ , $k≠0$ ). Otherwise, it just contains two integers, $l_{i}$ and $r_{i}$ ( $1<=l_{i}<r_{i}<=10^{5}$ ).
Next $q$ lines each describe a query. Each query description first contains the query type $type_{i}$ ( $1<=type_{i}<=2$ ). This is followed by further description of the query. In case of the type being $1$ , it is followed by integers $l_{i},r_{i}$ and $k_{i}$ (, $-10^{9}<=k_{i}<=10^{9}$ , $k≠0$ ). Otherwise, it just contains two integers, $l_{i}$ and $r_{i}$ ( $1<=l_{i}<r_{i}<=10^{5}$ ).
输出格式
Output the answer for each query of type 2 in a separate line.
输入输出样例
输入 #1
3 1 1 10 10 1 2 4 -7 2 1 10
输出 #1
34
输入 #2
7 1 2 3 5 1 1 10 10 1 4 5 -5 2 4 8 1 1 10 -10 2 4 8 2 1 10
输出 #2
15 75 170
In the first sample case, the danger value for $x$ -coordinates $1$ is $0$ as there is no $y_{2}$ satisfying the above condition for $x=1$ .
Danger values for $x$ -coordinates $2$ and $3$ is $10+|-7|=17$ .
Danger values for $x$ -coordinates $4$ to $9$ is again $0$ as there is no $y_{2}$ satisfying the above condition for these coordinates.
Thus, total danger value is $17+17=34$ .
Danger values for $x$ -coordinates $2$ and $3$ is $10+|-7|=17$ .
Danger values for $x$ -coordinates $4$ to $9$ is again $0$ as there is no $y_{2}$ satisfying the above condition for these coordinates.
Thus, total danger value is $17+17=34$ .
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?
提交通过
评测结果:Accepted