Submission
Status:
PPPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: pond4545
Problemset: สำรวจอาเรย์ 2
Language: cpp
Time: 0.009 second
Submitted On: 2025-09-29 20:05:11
#include<iostream>
using namespace std;
int main()
{
int x,y;
cin >> x >> y;
int arr[x][y];
for (int i = 0; i < x; i++)
{
for (int j = 0; j < y; j++)
{
cin >> arr[i][j];
}
}
int n;
cin >> n;
int pos = 0, neg = 0, even = 0, odd = 0;
int prevPos = 0, prevNeg = 0, prevEven = 0, prevOdd = 0;
for (int i = 0; i < n; i++) {
int r, c;
cin >> r >> c;
r--; c--;
if (r >= 0 && r < x && c >= 0 && c < y)
{
int val = arr[r][c];
int curPos = 0, curNeg = 0, curEven = 0, curOdd = 0;
if (val > 0) curPos++;
else if (val < 0) curNeg++;
if (val % 2 == 0) curEven++;
else curOdd++;
pos += curPos;
neg += curNeg;
even += curEven;
odd += curOdd;
prevPos = curPos;
prevNeg = curNeg;
prevEven = curEven;
prevOdd = curOdd;
}
else {
pos += prevPos;
neg += prevNeg;
even += prevEven;
odd += prevOdd;
}
}
cout << pos << " " << neg << " " << even << " " << odd << endl;
return 0;
}