Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: modx9572

Problemset: สำรวจอาเรย์ 2

Language: cpp

Time: 0.009 second

Submitted On: 2025-10-01 14:54:38

#include <bits/stdc++.h>
using namespace std;
int main(){
    int n,m;
    cin >> n >>m;
    int arr[n][m];
    for(int i=0;i<n;i++){
        for(int j=0;j<m;j++){
            cin >> arr[i][j];
        }
    }
    int q;
    cin >> q;
    int cnt[4]={};
    int last[4]={}; 
    bool hasLast=false; 

    for(int i=0;i<q;i++){
        int a,b;
        cin >> a >> b;

        if(a<1||b<1||a>n||b>m){
            if(hasLast){
                for(int j=0;j<4;j++){
                    if(last[j]) cnt[j]++;
                }
            }
            continue;
        }

        int ab=arr[a-1][b-1];
        for(int j=0;j<4;j++) last[j]=0;

        if(ab>0){
            cnt[0]++;
            last[0]=1;
        }
        if(ab<0){
            cnt[1]++;
            last[1]=1;
        }
        if((abs(ab)%2)==0){
            cnt[2]++;
            last[2]=1;
        }
        if((abs(ab)%2)!=0){
            cnt[3]++;
            last[3]=1;
        }

        hasLast=true;
    }

    for(int i=0;i<4;i++){
        cout << cnt[i]<<" ";
    }
}