HDU5600

来源:互联网 发布:智能建站 软件 编辑:程序博客网 时间:2024/06/05 07:28

http://acm.hdu.edu.cn/showproblem.php?pid=5600

这种题 感觉没什么思路 这种题做的太少了吧

#include<cstdio>int a[1000001];int main(){    int n,T;    scanf("%d",&T);    while(T--)    {        scanf("%d",&n);        for(int i=1;i<=n;i++){            scanf("%d",&a[i]);        }        for(int i=1;i<=n;i++)        {            if(!a[i]){                a[i+1]=!a[i+1];            }        }        if(a[n]){            puts("YES");        }        else puts("NO");    }    return 0;}没有分析好题目的本质题目是要求把所有的01变成0  如果这个是1 直接走过-》  0如果是0 则需要来回 通过下一个状态来改变回来 ,所以碰到0  就只要来回一次 即可解决所以最后我们只需要判断最后一位就可以了还有一种方法 只要有偶数个0  中间的1总可以更新为0
0 0
原创粉丝点击