zoukankan      html  css  js  c++  java
  • hdu5601 BestCoder Round #67 (div.2)

    N*M bulbs

     
     Accepts: 94
     
     Submissions: 717
     Time Limit: 10000/5000 MS (Java/Others)
     
     Memory Limit: 65536/65536 K (Java/Others)
    问题描述
    N*M个灯泡排成一片,也就是排成一个N*M的矩形,有些开着,有些关着,为了节约用电,你要关上所有灯,但是你又很懒。
    刚好有个熊孩纸路过,他刚好要从左上角的灯泡走去右下角的灯泡,然后离开。
    但是毕竟熊孩纸,熊孩纸在离开一个灯泡之前,一定会动一下当前开关,也就是开的变关,关的变开。
    想问你可不可能关完所有的灯,同时熊孩纸也可以到达右下角的灯泡,然后离开。
    输入描述
    第一行T,表示T组数据。
    接下来T组数据:
    每组数据,第一行N,M,后面一个N*M的01矩阵,表示灯泡的初始开关状态,0表示关,1表示开。
    
    1 leq T leq 101T10
    1 leq N, M leq 10001N,M1000
    输出描述
    每组数据,如果可以输出"YES",否则输出"NO"。
    输入样例
    1
    1 5
    1 0 0 0 0
    输出样例
    YES
    Hint
    孩子的路径是:123234545
    刚好除了第一盏灯,其他灯都只经过偶数次。


    思路:

    看见题大致乱想了一下,感觉001 和 0001这种最后都能变成100和1000这种,而且人在1这个点,于是看成无论是相隔奇数个还是偶数个0都能转移到起点。最后就成了判断起点0,1,然后判断能否到达终点。


    #include <iostream>
    #include <cstdio>
    #include <cstdlib>
    #include <functional>
    #include <cmath>
    #include <cstring>
    #include <algorithm>
    using namespace std;
    const int maxn = 10000;
    int a[maxn][maxn];
    
    int main()
    {
        int T;
        int n,m;
        scanf("%d",&T);
        while(T--)
        {
            scanf("%d%d",&n,&m);
            int num = 0;
            for(int i = 0; i < n; i++)
                for(int j = 0; j < m; j++)
                {
                    scanf("%d",&a[i][j]);
                    if(a[i][j] == 1)
                        num++;
                }
            if(num % 2)
            {
                if((n + m) % 2)
                    printf("NO
    ");
                else
                    printf("YES
    ");
            }
            else
            {
                if((n + m) % 2 == 0)
                    printf("NO
    ");
                else
                    printf("YES
    ");
            }
        }
        return 0;
    }
    

      






  • 相关阅读:
    hdu 1047 Integer Inquiry
    大数模板(高精度)
    git 学习
    java List 排序
    简单排序总结
    JDK1.8
    webservice 学习笔记 1
    inline-block,inline,block,table-cell,float
    mybatis 学习视频总结记录
    left join right inner join 区别
  • 原文地址:https://www.cnblogs.com/Przz/p/5409659.html
Copyright © 2011-2022 走看看