Cod sursa(job #126569)

Utilizator fireatmyselfBogdan-Alexandru Stoica fireatmyself Data 22 ianuarie 2008 14:32:48
Problema Xerox Scor 100
Compilator c Status done
Runda Arhiva de probleme Marime 1.1 kb
#include <stdio.h>
#define NMAX 222
#define VMAX 444

int G[NMAX], V[VMAX];

void grundy()
{
        int i, x, j;

        for (i = 1; i <= 200; i++)
        {
                memset(V,0,sizeof(V));
		for (x = 1; x <= i; x++)
		    for (j = 0; j <= i-x; j++)
                        V[ G[j]^G[i-x-j] ] = 1;
                for (j = 0; j < VMAX; j++)
                    if (!V[j]) { G[i] = j; break; }
        }
}

int N, M;

int main()
{
        int i, j, dx, dy, g, _case;

        grundy();

        freopen("xerox.in", "r", stdin);
        freopen("xerox.out", "w", stdout);

        scanf("%d", &_case);

        while (_case--)
        {
                scanf("%d%d%d", &N, &dx, &dy);
                for (i = g = 0; i < N; i++)
                {
                        scanf("%d", &M);
                        for (j = 0; j < M; j++)
                            scanf("%d%d", &dx, &dy);
                        g ^= G[M];
                }
                if (!g) printf("0\n");
                        else printf("1\n");
        }
        
        return 0;
}