Submission

Status:

----------

Subtask/Task Score:

0/100

Score: 0

User: Peam

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

Language: c

Time: 0.005 second

Submitted On: 2025-10-10 18:50:52

#include <stdio.h>
int main(){
    int n, m;
    scanf("%d%d", &n, &m);

    int arr[n][m];
    for(int i = 0; i < n; i++){
        for(int j = 0; j < m; j++){
            scanf("%d", &arr[i][j]);
        }
    }

    int k, x, y;
    int pos = 0, neg = 0, even = 0, odd = 0; 
    int fp, fn, fe, fo;
    scanf("%d", &k);
    for(int i = 0; i < k; i++){
        scanf("%d %d", &x, &y);
        if((x - 1 < 0 || y - 1 < 0) || (x > n || y > m)){
            if(fn == 1){
                neg++;
            }
            if(fp == 1){
                pos++;
            }
            if(fe == 1){
                even++;
                // printf("in con\n");
            }
            if(fo == 1){
                odd++;
            }
            continue;
        }
        else{
            fn = 0;
            fp = 0;
            fe = 0;
            fo = 0;
        }

        // printf("fo old: %d\n", fo);
        //neg
        if(arr[x-1][y-1] < 0){
            neg++;
            fn = 1;
            }

        //pos
        if(arr[x-1][y-1] > 0){
            pos++;
            fp = 1;
        }

        //even
        if(arr[x-1][y-1] % 2 == 0){
            even++;
            fe = 1;
            // printf("this: %d\n", arr[x-1][y-1]);
            // printf("fo: %d\n", fe);
        }

        //odd
        if(arr[x-1][y-1] % 2 == 1 || arr[x-1][y-1] % 2 == -1){
            odd++;
            fo = 1;

        }
    }

    //printf("even: %d", even);
    printf("%d %d %d %d", pos, neg, even, odd);

    return 0;
}
/*
4 6
0 -1 2 3 -3 -7
11 7 -4 12 17 -6
-7 12 11 -9 -1 0
0 -2 8 10 -5 8
10
4 2
1 1
-3 2
2 0
3 4
2 6
1 4
4 5
3 7
5 2
*/

/*
5 7
0 -1 2 3 -3 -7 7
11 7 -4 12 17 -6 -3
-7 12 11 -9 -1 0 20
0 -2 8 10 -5 8 6
-3 8 -1 -2 -3 -4 -5
12
4 2
1 1
-3 2
3 4
2 6
2 0
8 1
1 4
4 5
3 7
5 2
4 8
*/