Submission

Status:

----------

Subtask/Task Score:

0/100

Score: 0

User: Jokul

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

Language: c

Time: 0.005 second

Submitted On: 2025-10-06 22:11:16

#include<stdio.h>
int main(){
    int r,c;
    scanf("%d  %d",&r,&c);
    int a[r][c];

    for(int i=0;i<r;i++)
    {
        for(int j=0;j<c;j++)
        {
            scanf("%d",&a[i][j]);
        }
    }
    int k;
    scanf("%d",&k);
    int neg[k+1],pos[k+1],odd[k+1],even[k+1];
    neg[0]=0;
    pos[0]=0;
    odd[0]=0;
    even[0]=0;
    int coor[k+1][2];
    for(int i=1;i<=k;i++)
    {
    scanf("%d",&coor[i][0]);
    scanf("%d",&coor[i][1]);
       pos[i]=pos[i-1];
       neg[i]=neg[i-1];
    if(coor[i][0]>0&&coor[i][1]>0&&coor[i][0]<=r&&coor[i][1]<=c)
    {
        if(a[coor[i][0]-1][coor[i][1]-1]>0)
        {
            pos[i]=pos[i-1]+1;
            neg[i]=neg[i-1];
        }
        else if(a[coor[i][0]-1][coor[i][1]-1]<0)
        {
            neg[i]=neg[i-1]+1;
            pos[i]=pos[i];
        }
        if(a[coor[i][0]-1][coor[i][1]-1]%2==0)
        {
            even[i]=even[i-1]+1;
            odd[i]=odd[i-1];
        }
        else
        {
            odd[i]=odd[i-1]+1;
            even[i]=even[i-1];
        }
    }
    /////////////////////////////////////////////
    else
    {
        pos[i]=pos[i-1];
        neg[i]=neg[i-1];
        if(odd[i-1]!=odd[i-2])
        {
            odd[i]=odd[i-1]+1;
            even[i]=even[i-1];
        }
        else if(even[i-1]!=even[i-2])
        {
            odd[i]=odd[i-1];
            even[i]=even[i-1]+1;
        }
    }
    }
    printf("%d %d %d %d",pos[k],neg[k],even[k],odd[k]);
}