Friday, May 15, 2015

462A - Appleman and Easy Task(Codeforces)

#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
#include<vector>
#include<map>
using namespace std;
#define pf printf
#define sf scanf
#define loop(i, n) for(i=0; i<(n); i++)
#define MAX 105
typedef long long ll;

char a[MAX][MAX];
int d1[] = {0 , 0 , 1, -1};
int d2[] = {1, -1, 0, 0};
int n;

bool valid(int x, int y)
{
    return (x>=0 && x<n && y>=0 && y<n);
}

int main()
{
    int i, j, k;
    int x, y, cnt=0, flag=1;
    sf("%d", &n);

    loop(i, n)
        sf("%s", a[i]);

    loop(i, n)
    {
        loop(j, n)
        {
            loop(k, 4)
            {
                x = d1[k] + i;
                y = d2[k] + j;

                if(!valid(x, y))
                    continue;
                if(a[x][y]== 'o')
                    cnt++;
            }
            if(cnt & 1)
            {
                flag = 0;
                i = j = n+n;
            }
        }
    }
    if(flag==1)
        pf("YES\n");
    else
        pf("NO\n");
    return 0;
}

No comments:

Post a Comment

Compare equality of two string in C

#include <stdio.h> #include<string.h> int main() {     char* country = "Bangladesh";     char* country2;     ...