| Task: | Forest density |
| Sender: | aalto26dm_040 |
| Submission time: | 2026-09-21 17:41:17 +0300 |
| Language: | Python3 (CPython3) |
| Status: | READY |
| Result: | TIME LIMIT EXCEEDED |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.02 s | details |
| #2 | TIME LIMIT EXCEEDED | -- | details |
| #3 | TIME LIMIT EXCEEDED | -- | details |
Code
buffer = input().split()
n = int(buffer[0])
q = int(buffer[1])
forest = []
for _ in range(n):
forest.append(input())
rectangles = [[0 for _ in range(n+1)] for _ in range(n+1)]
for i in range(1,n+1):
line_count = 0
for j in range(1,n+1):
if forest[i-1][j-1] == '*':
line_count += 1
rectangles[i][j] += line_count
if i > 0:
rectangles[i][j] += rectangles[i-1][j]
for _ in range(q):
query = list(map(int,input().split()))
res = rectangles[query[2]][query[3]]
res += rectangles[query[0]-1][query[1]-1]
res -= rectangles[query[0]-1][query[3]]
res -= rectangles[query[2]][query[1]-1]
print(res)
#print(rectangles)Test details
Test 1
Verdict: ACCEPTED
| input |
|---|
| 10 100 **.*.*.**. *.**.*..*. .*****.**. **....***. ... |
| correct output |
|---|
| 10 14 5 7 8 ... |
| user output |
|---|
| 10 14 5 7 8 ... |
Test 2
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 1000 200000 **.**.****..**.***..**.***.**.... |
| correct output |
|---|
| 41079 2824 15631 1548 8483 ... |
| user output |
|---|
| (empty) |
Test 3
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 1000 200000 ******************************... |
| correct output |
|---|
| 1000000 1000000 1000000 1000000 1000000 ... |
| user output |
|---|
| (empty) |
