#T2125. 森林查询(Forest Queries)

森林查询(Forest Queries)

链接: https://cses.fi/problemset/task/1652

板块: Range Queries

时限: 1.00 s | 内存: 512 MB

题目描述

给你一个 n×nn \times n 的网格,表示一片森林的地图。每个方格要么是空地,要么有一棵树。左上角方格的坐标为 (1,1)(1,1),右下角方格的坐标为 (n,n)(n,n)

你的任务是处理 qq 个如下形式的查询:森林中某个给定矩形内有多少棵树?

输入

第一行输入包含两个整数 nnqq:分别表示森林的大小和查询数量。

接着有 nn 行描述森林。每行包含 nn 个字符:. 表示空地,* 表示一棵树。

最后有 qq 行描述查询。每行包含四个整数 y1y_1x1x_1y2y_2x2x_2,分别对应一个矩形的两个角。

输出

输出每个矩形内的树木数量。

数据范围

1n10001 \le n \le 1000 1q21051 \le q \le 2 \cdot 10^5 1y1y2n1 \le y_1 \le y_2 \le n 1x1x2n1 \le x_1 \le x_2 \le n

样例输入

4 3
.*..
*.**
**..
****
2 2 3 4
3 1 3 1
1 1 2 2

样例输出

3
1
2