#arc0144. [arc014_4]grepマスター
[arc014_4]grepマスター
问题文
高桥君擅长使用目标检索(grep
)。然而,尽管有许多人擅长目标检索(grep
),但它不能成为一个特技。因此,高桥君正在阅读grep
命令的手册,以学习并掌握一项新技能。
grep
搜索命令有两个选项:-B
和-A
。当使用以下命令时:
grep -B x -A y "needle" kakikomi.txt
不仅会显示在文件kakikomi.txt
中匹配模式"needle"
的行,还会显示这些行之前的x
行和之后的y
行。如果行数不足以满足x,y
的要求,则显示所有可用的行。
如果同一行号出现多次,则这些行将被合并,每行只会出现一次。输出示例中对此行为有详细说明。
现在,假设我们对文件kakikomi.txt
执行了grep
命令,并已知命中行的编号列表。同时,给出了个查询,每个查询都指定了。对于每个查询,请回答执行带有-B x -A y
选项的grep
命令后显示的行数。
输入
输入通过标准输入提供,具有以下格式: : :
- 第1行包含3个整数:表示文件
kakikomi.txt
的行数(),表示命中行数(),表示查询的数目()。 - 第2行到第行的行提供了命中行的行号()。
- 保证。
- 第行到第行的行提供了每个对应的查询整数()。
输出
对于每个查询,在一行中输出显示的行数。
最后输出一个换行符。
输入示例 1
7 2 3
2
4
1 1
3 0
3 4
输出示例 1
5
4
7
- 命中的行是第2行和第4行。
- 当时,每个命中范围是第1行到第3行和第3行到第5行,所以总共显示了5行。
- 当时,每个命中范围是第1行到第2行和第1行到第4行,所以总共显示了4行。
- 当时,每个命中范围是第1行到第6行和第1行到第7行,所以总共显示了7行。
输入示例 2
100 5 5
3
18
24
57
90
1 8
27 0
15 16
22 3
2 2
输出示例 2
46
80
98
79
25