| Task: | Forest density |
| Sender: | aalto26dm_017 |
| Submission time: | 2026-09-21 16:52:46 +0300 |
| Language: | C++ (C++20) |
| Status: | READY |
| Result: | WRONG ANSWER |
| test | verdict | time | |
|---|---|---|---|
| #1 | WRONG ANSWER | 0.00 s | details |
| #2 | RUNTIME ERROR | 0.28 s | details |
| #3 | WRONG ANSWER | 0.31 s | details |
Code
#include <iostream>
#include <vector>
using namespace std;
int main(){
int n, q;
cin >> n >> q;
vector<vector<char>> mat(n, vector<char>(n));
for (int i=0;i<n;i++){
for (int j=0;j<n;j++){
cin>> mat[i][j];
}
}
vector<vector<int>> queries(q, vector<int>(4));
for (int i=0;i<q;i++){
cin >> queries[i][0] >> queries[i][1] >> queries[i][2] >> queries[i][3];
}
vector<vector<int>> trees(n, vector<int>(n));
for (int i=0;i<n;i++){
for (int j=0;j<n;j++){
int tree=mat[i][j]=='*';
if (i>0){
tree+=trees[i-1][j];
}
if (j>0){
tree+=trees[i][j-1];
}
if (i>0 && j>0){
tree-=trees[i-1][j-1];
}
trees[i][j]=tree;
//cout << trees[i][j];
}
//cout << '\n';
}
for (auto &q: queries){
vector<int> coord1={min(q[0],q[2])-2, min(q[1],q[3])-2};
vector<int> coord2={max(q[0],q[2])-2, max(q[1],q[3])-1};
int val1=trees[coord2[0]][coord2[1]];
int val2=coord1[0]>=0 ? trees[coord1[0]][coord2[1]] : 0;
int val3=coord1[1]>=0 ? trees[coord2[0]][coord1[1]] : 0;
int val4=0;
if (coord1[0]>=0){
if (coord1[1]>=0){
val4=trees[coord1[0]][coord1[1]];
}
}
cout << val1-val2-val3+val4+1<<'\n';
}
}Test details
Test 1
Verdict: WRONG ANSWER
| input |
|---|
| 10 100 **.*.*.**. *.**.*..*. .*****.**. **....***. ... |
| correct output |
|---|
| 10 14 5 7 8 ... |
| user output |
|---|
| 8 10 1 5 5 ... |
Feedback: Incorrect character on line 1 col 1: expected "10", got "8"
Test 2
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 200000 **.**.****..**.***..**.***.**.... |
| correct output |
|---|
| 41079 2824 15631 1548 8483 ... |
| user output |
|---|
| 41005 2812 15609 1521 8422 ... |
Test 3
Verdict: WRONG ANSWER
| input |
|---|
| 1000 200000 ******************************... |
| correct output |
|---|
| 1000000 1000000 1000000 1000000 1000000 ... |
| user output |
|---|
| 999001 999001 999001 999001 999001 ... |
Feedback: Incorrect character on line 1 col 1: expected "1000000", got "999001"
